커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3255
글번호 230811
답변완료
수식 의뢰 부탁드립니다.
개발자님의 노고에 감사드립니다
18시 이후 120틱 이익발생 시 청산 후 매매중지를 하려고 합니다
이리저리했지만 안 돼서 부탁드립니다
감사합니다
# 날짜 변경되면 해제
If sDate != sDate[1] Then
{
SetStopProfittarget(0);//해제
}
#18시 이후 120틱 이익발생 시 청산
if stime > 180000 Then
{
SetStopProfittarget(120,PointStop);
}
2020-07-30
1026
글번호 141109
2wnwn 님에 의해서 삭제되었습니다.
2020-07-30
25
글번호 141108
답변완료
macd 강세약세부탁드립니다
macd 강세약세를 짚로 만들어주실수있을까요?
시그널선과 크로스로 부탁드립니다.
2020-07-30
1406
글번호 141107
답변완료
68568 관련.
사진 첨부한 친절한 설명 감사드립니다.
작성 수식의 신호타입이 onclose가 아니면,
모두 if조건만족하면 다음봉에 나오는 신호타입이므로 첫봉에는 신호가 발생할수 없다고 하셨는데,
아래 식은 제가 시뮬레시션한 시스템식인데, 이건 첫봉에 신호가 나올수 없다는 말씀이죠?
첫봉에도 신호가 나오게 하려면 onclose 타입으로 바꿔야 하는 건가요?
onclose로 바꾸면 제가 원하는 조건만족시 즉시진입같은 아래 방식이 안될거 같은데요?
방법이 없을까요?
(추가질문: 아래식과 같은 atstop신호타입은, 시뮬레시션할때 슬리피지는 몇틱 정도로 설정해야 하는지요?)
.
.
.
input : StartTime(070000),EndTime(055000);
var : Tcond(false);
if sdate != sdate[1] Then
SetStopEndofday(endtime);
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
SetStopEndofday(0);
Tcond = true;
}
if Tcond == true then
{
buy("b",AtStop,NextBarOpen+(H-L));
ExitLong("bx1",AtStop,NextBarOpen);
sell("s",AtStop,NextBarOpen-(H-L));
ExitShort("sx1",AtStop,NextBarOpen);
if MarketPosition == 1 Then
ExitLong("bx2",AtMarket);
if MarketPosition == -1 Then
ExitShort("sx2",AtMarket);
}
2020-07-30
1441
글번호 141106
답변완료
당일 종가가 조건만족하는 봉의 가격에 수렴하는 종목 찾기
안녕하세요,
종목 검색 수식 도움 구하고자 합니다.
1. 최근 N봉이내 고가-종가 10% 이상, 시가-종가 3%미만인 봉을 찾아 해당 봉의 중간값 (H-L)/2 구하고,
2. 당일 종가가 1번의 중간값에 1% 이내에 도달한 종목을 검색
늘 많은 도움에 감사드립니다.
2020-07-29
1440
글번호 141105
답변완료
문의드립니다
차트설정
data1 일봉
data2 일봉
매수진입
data1의 무포지션 기간내
data2 최소값 대비 data2 종가가 B% 상승시
예)
차트설정 시작 후
data1은 무포지션이므로
data2의 최소값을 갱신하면 기억하였다가
data2 최소값 대비 data2 종가가 B% 상승시 매수진입
매수청산이 발생하면
그 다음봉 부터
data1 무포지션으므로
data2의 최소값을 갱신하면 기억하였다가
data2 최소값 대비 data2 종가가 B% 상승시 매수진입
매수청산
data1 매수진입이후
data2의 최고값 대비 data2 종가가 A% 하락시
감사합니다
2020-07-29
1307
글번호 141103
답변완료
문의드립니다
d1의 무포지션 매수포지션 일때 각각 d2 최소값 최대값 지표식
data1 무포지션 일때부터 data2의 최소값
data1 매수포지션 진입시 999999로 고정
data1 매수포지션이 청산되면 data1 새로운 무포지션 일때부터 data2의 최소값
...반복
data1 매수포지션 진입부터 data2의 최대값
data1 매수포지션 청산시 1로 고정
data1 매수포지션 진입되면 data1 새로운 매수포지션 진입부터 data2의 최대값
...반복
2020-07-29
1325
글번호 141102
해피오 님에 의해서 삭제되었습니다.
2020-07-29
426
글번호 141099
답변완료
수식 추가 질문드려요~~~
답변 정말정말 감사드립니다^^ 추가 질문이 있습니다!
1. 20건 이상 체결을 거래량이 아닌 순매수체결량으로 제가 값을 수정했는데요~
var1 = var1 + Upvol - Downvol; 이렇게요~ 이렇게 쓰는게 맞는건가요? 1틱은 양봉이면
상승거래량으로, 하락이면 하락 거래량으로 잡히는건가요~?
2. 질문1의 막대 위에 5,20,60,120 이평선을(20건 이상 순매수체결의 추세를 보여주는) 그려주고 싶습니다. 도와주세요!!
3. 질문2가 완성 되면 20 이평선 위에 있다면 막대를 빨간색, 밑에 있다면 파란색으로 표시하고 싶습니다! 도와주세요!!
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식 질문 입니다^^
> 안녕하세요
예스스탁입니다.
아래식 참고하시기 바랍니다.
input : N(20);
if sdate != sdate[1] Then
{
var1 = 0;
}
#첫봉과 마지막봉 제외하는 if문
#봉완성시(다음봉시가수신)에
#전봉과 현재봉날짜가 같고 다음봉시가 날짜도 같으면
if sdate == sdate[1] and NextBarSdate == sDate Then
{
#거래량 N개이상만 누적
if V >= n Then
var1 = var1 + v;
}
If var1 > var1[1] Then
{
Plot1(var1, "상승거래량");
Plot2(0, "하락거래량");
}
Else
{
Plot1(0, "상승거래량");
Plot2(Var1, "하락거래량");
}
PlotBaseLine1(0,"기준선");
즐거운 하루되세요
> 분당고래 님이 쓴 글입니다.
> 제목 : 수식 질문 입니다^^
> 안녕하세요~
1틱 차트에서 첫, 마지막 봉을 제외한 체결량을 누적하는 수식을 만들었는데요~
이 수식을 20개 이상 거래만 누적해 가려면 어떻게 변경해야할까요~?
var1 = sumlist(var1 + Upvol - Downvol);
if date != date[1] Then{
var1 = 0;
}
if index == 0 Then{
var1 = 0;
}
if stime >= 152900 Then{
var1 = 0;
}
If var1 > var1[1] Then
{
Plot1(var1, "상승거래량");
Plot2(0, "하락거래량");
}
Else
{
Plot1(0, "상승거래량");
Plot2(Var1, "하락거래량");
}
PlotBaseLine1(0,"기준선");
2020-07-29
2035
글번호 141097