커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1705
글번호 230811
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
757
글번호 153877
2wnwn 님에 의해서 삭제되었습니다.
2021-11-24
17
글번호 153876
답변완료
kospi200 순매수량 참조데이터
전략차트에서
kospi200 순매수량 참조데이터로 불러왔는데
데이터가 없는 걸로 나옵니다.
원래 안 나오는건가요?
2021-11-24
476
글번호 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
586
글번호 153865
답변완료
수식 수정 부탁드립니다
아래 수식에 다음 사항을 추가하여 수식 수정 부탁드립니다
전일과 분리되어 당일부터 실행되는 종가 파라볼릭 기준
동시호가 캔들 포함 3번째 캔들이 음봉이고
<3캔들 신저가 이며>
종가가 파라볼릭보다 낮으면 매도하여 종가 파라볼릭 음양 전환에 따라 매도,매수,매도,매수 4번 거래로 당일 거래 종료.
동시호가 캔들 포함 3번째 캔들이 양봉이고
<3캔들 신고가 이며>
종가가 파라볼릭보다 높으면 매수하여 종가 파라볼릭 양,음 전환에 따라 매수,매도,매수,매도 4번 거래로 당일 거래 종료.
감사합니다
---------------------------------------------------------------------------------
전일과 분리되어 당일부터 실행되는 종가 파라볼릭 기준
동시호가 캔들 포함 3번째 캔들이 음봉이고 종가가 파라볼릭보다 낮으면 매도하여
종가 파라볼릭 음양 전환에 따라 매도,매수,매도,매수 4번 거래로 당일 거래 종료.
동시호가 캔들 포함 3번째 캔들이 양봉이고 종가가 파라볼릭보다 높으면 매수하여
종가 파라볼릭 양,음 전환에 따라 매수,매도,매수,매도 4번 거래로 당일 거래 종료.
Input : AF(0.02), AFMAX(0.2);
Var : Direction(0), SAR_Value(Close), AF_Value(.02), HighValue(High), LowValue(Low), EP(0),csarv(0),idx(0);
if Index == 0 or Bdate != Bdate[1] Then
{
Direction = 0;
SAR_Value = c;
AF_Value = 0.02;
HighValue = c;
LowValue = c;
EP = 0;
idx = 0;
}
idx = idx+1;
if EP != 0 Then
{
if Direction == 1 then
{
EP = HighValue;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if High > HighValue then
{
HighValue = High;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
if Close < SAR_Value then
{
Direction = -1;
SAR_Value = EP;
AF_Value = 0;
EP = 0;
LowValue = low;
}
}
else
{
EP = LowValue;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if Low < LowValue then
{
LowValue = Low;
AF_Value = AF_Value + Af;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
if Close > SAR_Value then
{
Direction = 1;
SAR_Value = EP;
AF_Value = 0;
EP = 0;
HighValue = High;
}
}
CSarv = SAR_Value;
}
else
{
if SAR_Value != 0 && EP == 0 then
{
if Direction == 1 then
{
EP = HighValue;
AF_Value = AF;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if High > HighValue then
{
HighValue = High;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
}
else
{
EP = LowValue;
AF_Value = Af;
SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value);
if Low < LowValue then
{
LowValue = Low;
AF_Value = AF_Value + AF;
if AF_Value >= AFMAX then AF_Value = AFMAX;
}
}
CSarv = SAR_Value;
}
else
{
if Direction == 0 then
{
if Close > Close[1] then Direction = 1;
else
if Close < Close[1] then Direction = -1;
}
else
{
if Direction == 1 then
{
if Close < Close[1] then
{
Direction = -1;
SAR_Value = HighValue;
CSarv = SAR_Value;
}
}
if Direction == -1 then
{
if Close > Close[1] then
{
Direction = 1;
SAR_Value = LowValue;
CSarv = SAR_Value;
}
}
}
LowValue = min(Low, LowValue);
HighValue = max(High, HighValue);
}
}
if idx == 3 Then
{
if C < O and C < Csarv Then
Sell();
if C > O and C > Csarv Then
Buy();
}
if idx > 3 Then
{
if CrossUp(C,Csarv) Then
Buy();
if CrossDown(c,Csarv) Then
Sell();
}
2021-11-24
567
글번호 153864
신대륙발견 님에 의해서 삭제되었습니다.
2021-11-24
4
글번호 153863
답변완료
전략 작성부탁드립니다.
매수조건 :
1)한번도 거래한 적이 없거나, 최근청산 후 15개봉 이후 일것
and
2)ma(C,10)이 ma(c,20)을 상향돌파한지 10개봉 이내일것
and
3)최근 두개봉이 모두 양봉일것
청산조건
포지션이 매수라면
1.1계약당 수익이 20포인트 보다 작다면
진입가-atr(60)*5 에 atstop 청산
단, 현시간이 (섬머타임기준 22시30분,섬머타임이외 23시 30분) 전후 1시간이라면
진입가 - atr(60)* 5 * 8.5 atstop 청산
2. 1계약당 수익이 20포인트 이상이라면
진입후 최고가-atr(60) * 5에 atstop청산
단, 현시간이 (섬머타임기준 22시30분, 섬머타임이외 23시 30분) 전/후 1시간이라면
진입후 최고가 - atr(60) *5 * 8.5 atstop청산
3. 1계약당 수익이 200포인트 이상이라면
진입후 최고가 - atr(60) * 5 / 2 atstop청산
2021-11-24
549
글번호 153862
답변완료
다음 지표를 검색식으로 부탁드립니다.
예스 오늘 가입한 새내기입니다..
그동안 이래저래 가입못하고 있다가 더이상 미루면 안될것 같아서
오늘 가입했습니다...
앞으로 많은 가르침 부탁드리겠습니다....
LL=MIN(C,O);
HH=MAX(C,O);
LT=LOWEST(LL,P1);
HT=HIGHEST(HH,P1);
NewH = ValueWhen(1,H > HT(1),HH);
BOX1 = HIGHEST(H,20-2)<HIGHEST(H,20-1);
TOP=ValueWhen(1,barsSince(H>ht(1))== 20-2 and BOX1, NewH);
TOP
다음과 같은 조건식을 검색식으로 변환해서 종목을 찾아보고 싶습니다.
2021-11-23
726
글번호 153861