커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6138
글번호 230811
답변완료
문의 드립니다.
항상 감사드립니다.
수식 작성 부탁드립니다.
매수 매도 1번, 2번에 대해 각각 수식 부탁드립니다.
2번에서는 ⓵과 ⓶ 부분을 수식내에 구분해서 부탁드립니다.
거래시간 : 오전 9시~ 익일 새벽 6시
익절틱수 : N, 손절틱수 : N
매수 : 1. 삼각가중 5일 이평과 20일 이평이 골든 크로스
2. 삼각가중 5일 이평과 20일 이평이 골든 크로스 + 앞 캔들의 고가를 돌파한 캔들의 ⓵종가 매수(양봉에만 진입), 또는 ⓶돌파시 즉시 매수.
순서는 관계없이 두가지 조건 만족하면 됩니다.
청산 1 – 5일 이평과 20일 이평이 데드 크로스 날 때, ⓵청산 종료 하는 것과
⓶스위칭 하는 수식으로 구분해서 부탁드립니다.
청산 2 – N틱 지정 청산.
매도 : 1. 삼각가중 5일 이평과 20일 이평이 데드 크로스
2. 삼각가중 5일 이평과 20일 이평이 데드 크로스 + 앞 캔들의 저가를 돌파한 캔들의 ⓵종가 매도(음봉에만 진입), 또는 ⓶돌파시 즉시 매도.
순서는 관계없이 두가지 조건 만족하면 됩니다.
청산 1 – 5일 이평과 20일 이평이 골든 크로스 날 때, ⓵청산 종료 하는 것과
⓶스위칭 하는 수식으로 구분해서 부탁드립니다.
청산 2 – N틱 지정 청산.
2021-11-24
813
글번호 153895
답변완료
74774 재질문 부탁 드립니다.(내용 무)
.
2021-11-24
694
글번호 153885
답변완료
수정부탁합니다
74651번 수정 부탁드립니다
당일 마지막봉을 0으로 수정해주셨는데 보기가 불편해서
장마감 동시호가봉을 0으로 수정 아니면
3시20부터 장마감 까지 0으로 수정 부탁합니다
2021-11-24
656
글번호 153883
크라켄 님에 의해서 삭제되었습니다.
2021-11-24
20
글번호 153879
knb 님에 의해서 삭제되었습니다.
2021-11-24
14
글번호 153878
답변완료
시스템식 부탁드려요
var : count(0),count1(0),count2(0),count3(0);
var11 = accumn(m,1)/accumn(V,1);
var12 = accumn(m,3)/accumn(v,3);
var13 = accumn(m,5)/accumn(v,5);
var14 = accumn(m,10)/accumn(v,10);
var15 = accumn(m,20)/accumn(v,20);
var16 = accumn(m,40)/accumn(v,40);
Var20 = ma(c,20);
if Bdate != Bdate[1] Then
{
var1 = 0;
Var2 = 0;
Var4 = o;
Var5 = c;
}
var1 = var1+m;
Var2 = Var2+v;
Var3 = var1/Var2;
count = 0;
if CrossUp(c,var12[1]) Then
count = count+1;
if CrossUp(c,var13[1]) Then
count = count+1;
if CrossUp(c,var14[1]) Then
count = count+1;
if CrossUp(c,var15[1]) Then
count = count+1;
if CrossUp(c,var16[1]) Then
count = count+1;
count1 = 0;
if CrossUp(c,var12) Then
count1 = count1+1;
if CrossUp(c,var13) Then
count1 = count1+1;
if CrossUp(c,var14) Then
count1 = count1+1;
if CrossUp(c,var15) Then
count1 = count1+1;
if CrossUp(c,var16) Then
count1 = count1+1;
if c>ma(c,120) and
((CrossUp(v,Var32) and c>DayLow(1) and (c>Var3 or c>o)) or ((CrossUp(Var2,DayVolume(1)) and c>DayClose(1))))
Then #(Var50>3 and Index > var50 and Index <= var50 + 20 )
{
var50 = Index;
Var51 = c;
Var52 = O;
Var53 = m/v;
Var54 = v;
}
if( l<var12 and c>var12 ) and ( l<var13 and c>var13 )and ( l<var11 and c>var11 )
Then #(Var60>0 and Index > var60 and Index <= var60 + 20 )
{
var60 = Index;
Var61 = c;
Var62 = O;
Var63 = m;
Var64 = L;
}
count2 = 0;
if l[1]<var12 and c>var12 Then
count2 = count2+1;
if l[1]<var13 and c>var13 Then
count2 = count2+1;
if l[1]<var14 and c>var14 Then
count2 = count2+1;
if l[1]<var15 and c>var15 Then
count2 = count2+1;
if l[1]<var16 and c>var16 Then
count2 = count2+1;
count3 = 0;
if l<var12 and c>var12 Then
count3 = count3+1;
if l<var13 and c>var13 Then
count3 = count3+1;
if l<var14 and c>var14 Then
count3 = count3+1;
if l<var15 and c>var15 Then
count3 = count3+1;
if l<var16 and c>var16 Then
count3 = count3+1;
Var30 = highest(m,50);
Var31 = highest(c,250);
Var32 = DayVolume(1)/10;
if c>ma(c,120) and !(h*0.98>c) and
(((CrossUp(v,Var32) and c>DayLow(1) and (c>Var3 or c>o)) or ((CrossUp(Var2,DayVolume(1)) and c>DayClose(1))))
or (Var50>3 and Index > var50 and Index <= var50 + 10 and CrossUp(c,Var3) ))
Then
find(1);
input : n(3);
var1 = AccumN(Upvol,DayIndex+1)/accumn(downvol,DayIndex+1)*100;
var5 = accumn(m,20)/accumn(v,20);
Var10 = highest(m,30);
Var6 = ma(var1,5);
if Bdate != Bdate[1] Then
{
var31 = 0;
Var32 = 0;
Var34 = o;
Var35 = c;
}
var31 = var31+m;
Var32 = Var32+v;
Var33 = var31/Var32;
var : idx(0);
if (sDate != sDate[1] )
Then
{
idx = 0;
var2 = Upvol/downvol*100;;
}
if Bdate != Bdate[1] Then
{
var11 = Upvol/downvol*100;
Var12 = 0;
Var14 = o;
Var15 = c;
}
Var20 = highest(m,30);
Var21 = var1-var1[1];
Var22 = highest(Var21,5);
if var1 >var1[1]+5 and c>ma(c,20) and c>var14
Then #(Var50>3 and Index > var50 and Index <= var50 + 20 )
{
var50 = Index;
Var51 = c;
Var52 = O;
Var53 = m/v;
Var54 = v;
}
if (var1 >var1[1]+5 and c>ma(c,20) )
Then #현재 매도호가물량 < 매수호가물량(1.5배이상 외부변수).
find(1);
input : n(3);
var1 = Upvol/downvol*100;
Var20 = highest(m,50);
if
asks > bids*n Then #현재 매도호가물량 < 매수호가물량(1.5배이상 외부변수).
find(1);
2022-08-22
797
글번호 153877
2wnwn 님에 의해서 삭제되었습니다.
2021-11-24
17
글번호 153876
답변완료
kospi200 순매수량 참조데이터
전략차트에서
kospi200 순매수량 참조데이터로 불러왔는데
데이터가 없는 걸로 나옵니다.
원래 안 나오는건가요?
2021-11-24
521
글번호 153874
답변완료
문의드립니다
Input : shortPeriod(12), longPeriod(26), Period(9);
Var : MACDV(0) , MACDS(0) ;
MACDV = MACD(shortPeriod, longPeriod);
MACDS = ema(MACDV,Period);
if MACDV > MACDV[1] Then
Plot1(MACDV, "MACD",RED);
Else
Plot1(MACDV, "MACD",BLUE);
if MACDS > MACDS[1] Then
Plot2(MACDS,"MACDSignal",RED);
Else
Plot2(MACDS,"MACDSignal",BLUE);
PlotBaseLine1(0, "기준선1");
...............................................
상기지표에서 MACDV나 MACDS의 색깔이변하면 경보음을 넣어 주세요 (즉 빨간색을 유지하다가 파란색으로 바뀌거나 반대로 파란색을 유지하다가 빨간색으로 바뀌면 그때 경보음이 나오게끔 해주세요)
감사합니다
2021-11-24
630
글번호 153865