커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3731
글번호 230811
답변완료
문의드립니다.
양봉에서 음봉으로 전환후 음봉이
지속되다가 다시 양봉이 떳을때
지속된 음봉의 고가와 저가를 추세선으로 표시하고 싶습니다.
2020-05-14
1567
글번호 138886
답변완료
문의드립니다
당일 20봉의 평균거래량 과 20봉의 평균거래량 보다 5% 높을때와
일봉 20봉의 평균거래량 과 일봉 20봉의 평균거래량 보다 5% 높을때를
당일지표에 표현하고싶습니다
2020-05-14
1522
글번호 138885
답변완료
실시간 체결구분 질문
선물 실시간 체결량중 매수 매도 구분해서 20개이상만 모아서 체결합을 차트에 구현할 수 있나요?
dde를 엑셀에서 20개이상 매수체결 매도체결을 따로 걸러내고 데이터매니저로 받고 다시 참조데이터로 변환하는 식으로 차트에 가공해서 구현하고 있습니다만 번거롭습니다.
dde가 아닌 차트상에 실시간 매수매도 체결량을 20개이상 따로 체결량 모아서 수식으로 구현할 수 없나요?
해당지표가 있는지 없다면 수식이나 구현방법 부탁합니다.
2020-05-14
1496
글번호 138884
답변완료
문의 드립니다.
var : length(20),siglength(9),colorBars(false);
var : mao(0),mac(0),mc(0),mo(0),signal(0),us(0),bc(0);
mao =ma(open, length);
mac =ma(close, length);
mc=mac-mao;
mo=mao-mac;
signal=ma(mc, siglength);
us=max(mc,mo);
if us > signal Then
{
if us==mc Then
PlotPaintBar(H,L,"강조",YELLOW);
Else
PlotPaintBar(H,L,"강조",CYAN);
}
...............................................................
상기 식을 데이타2용으로 보고 싶습니다.
감사합니다
2020-05-14
1477
글번호 138883
답변완료
문의드립니다
안녕하세요?
아래수식의 green 선과 red선에 기울기에따라 빨강과파랑의색을 넣고싶습니다
도움주셔서 감사합니다
input : Periods(20),Multiplier(3.0),changeATR(true),showsignals(true),highlighting(true);
var :src(0),atrv(0),atr2(0),up(0),up1(0),dn(0),dn1(0),trend(0);
src = (h+l)/2;
atr2 = ma(TrueRange, Periods);
atrv = iff(changeATR , atr(Periods) , atr2);
up = src-(Multiplier*atrv);
up1 = up[1];
up = iff(close[1] > up1 , max(up,up1) , up);
dn = src+(Multiplier*atrv);
dn1 = dn[1];
dn = iff(close[1] < dn1 , min(dn, dn1) , dn);
trend = 1;
trend = trend[1];
trend = iff(trend == -1 and close > dn1 , 1 ,iff( trend == 1 and close < up1 , -1 , trend));
plot1(iff(trend == 1 , up ,nan),"UpTrend", green);
plot2(iff(trend == 1 , nan , dn),"DownTrend",red);
plot3((o+h+l+c)/4,"평균가");
2020-05-14
1441
글번호 138882
답변완료
부탁드립니다
#,아래식에서도움부탁드립니다,
1번식은 전일 저점대비 피봇등분선입니다, 이 식을 전일 종가대비로 수정하고 싶은데
자꾸 에라가 나네요 도움부탁드립니다.
2번식에서 Plot1값을 Text 출력하고 싶습니다.
1,
var : 고점(0),저점(0),hh(0),ll(0),hh1(0),ll1(0),s1(0),s2(0),s3(0),s4(0),s5(0);
Array : Tx[38](0);
S1 = DayOpen(0);
S2 = dayhigh(0);
S3 = daylow(0);
S4 = (dayhigh(0)+daylow(0))/2;
S5 = (DayOpen(0)+dayhigh(0)+daylow(0))/3;
if Bdate != Bdate[1] Then
{
hh = h;
ll = l;
hh1 = hh[1];
ll1 = ll[1];
}
if h > hh Then
hh = h;
if l < ll Then
ll = l;
if hh1 > 0 and ll1 > 0 then
{
고점 = hh1;
저점 = ll1;
var1 = 고점-저점;
plot1(저점+var1*3.000);
plot2(저점+var1*2.764);
plot3(저점+var1*2.618);
plot4(저점+var1*2.500);
plot5(저점+var1*2.382);
plot6(저점+var1*2.236);
plot7(저점+var1*2.000);
plot8(저점+var1*1.764);
plot9(저점+var1*1.618);
plot10(저점+var1*1.500);
plot11(저점+var1*1.382);
plot12(저점+var1*1.236);
plot13(저점+var1*1.000);
plot14(저점+var1*0.764);
plot15(저점+var1*0.618);
plot16(저점+var1*0.500);
plot17(저점+var1*0.382);
plot18(저점+var1*0.236);
plot19(저점+var1*0);
plot20(저점-var1*0.236);
plot21(저점-var1*0.382);
plot22(저점-var1*0.500);
plot23(저점-var1*0.618);
plot24(저점-var1*0.764);
plot25(저점-var1*1.000);
plot26(저점-var1*1.236);
plot27(저점-var1*1.382);
plot28(저점-var1*1.500);
plot29(저점-var1*1.618);
plot30(저점-var1*1.764);
plot31(저점-var1*2.000);
plot32(저점-var1*2.236);
plot33(저점-var1*2.382);
plot34(저점-var1*2.500);
plot35(저점-var1*2.618);
plot36(저점-var1*2.764);
plot37(저점-var1*3.000);
plot38(s1);
plot39(s2);
plot40(s3);
plot41(s4,"중심",iff(s4<s1[1],LGREEN,LGREEN));
plot42(s5);
text_Delete(Tx[1]);
tx[1] = Text_New(sdate,stime,저점+var1*3.000," 3.0%:"+NumToStr(저점+var1*3.000,0));
text_Delete(Tx[2]);
tx[2] = Text_New(sdate,stime,저점+var1*2.764," 2,7%: "+NumToStr(저점+var1*2.764,0));
text_Delete(Tx[3]);
tx[3] = Text_New(sdate,stime,저점+var1*2.618," 2,6%: "+NumToStr(저점+var1*2.618,0));
text_Delete(Tx[4]);
tx[4] = Text_New(sdate,stime,저점+var1*2.500," 2,5%: "+NumToStr(저점+var1*2.500,0));
text_Delete(Tx[5]);
tx[5] = Text_New(sdate,stime,저점+var1*2.382," 2,3%: "+NumToStr(저점+var1*2.382,0));
text_Delete(Tx[6]);
tx[6] = Text_New(sdate,stime,저점+var1*2.236," 2,2%: "+NumToStr(저점+var1*2.236,0));
text_Delete(Tx[7]);
tx[7] = Text_New(sdate,stime,저점+var1*2.000," 2,0%:"+NumToStr(저점+var1*2.000,0));
text_Delete(Tx[8]);
tx[8] = Text_New(sdate,stime,저점+var1*1.764," 1,7%: "+NumToStr(저점+var1*1.764,0));
text_Delete(Tx[9]);
tx[9] = Text_New(sdate,stime,저점+var1*1.618," 1,6%: "+NumToStr(저점+var1*1.618,0));
text_Delete(Tx[10]);
tx[10] = Text_New(sdate,stime,저점+var1*1.500," 1,5%: "+NumToStr(저점+var1*1.500,0));
text_Delete(Tx[11]);
tx[11] = Text_New(sdate,stime,저점+var1*1.382," 1,3%: "+NumToStr(저점+var1*1.382,0));
text_Delete(Tx[12]);
tx[12] = Text_New(sdate,stime,저점+var1*1.236," 1,2%: "+NumToStr(저점+var1*1.236,0));
text_Delete(Tx[13]);
tx[13] = Text_New(sdate,stime,저점+var1*1.00," 1,0%:"+NumToStr(저점+var1*1.000,0));
text_Delete(Tx[14]);
tx[14] = Text_New(sdate,stime,저점+var1*0.764," 7%: "+NumToStr(저점+var1*0.764,0));
text_Delete(Tx[15]);
tx[15] = Text_New(sdate,stime,저점+var1*0.618," 6%: "+NumToStr(저점+var1*0.618,0));
text_Delete(Tx[16]);
tx[16] = Text_New(sdate,stime,저점+var1*0.500," 5%: "+NumToStr(저점+var1*0.500,0));
text_Delete(Tx[17]);
tx[17] = Text_New(sdate,stime,저점+var1*0.382," 3%: "+NumToStr(저점+var1*0.382,0));
text_Delete(Tx[18]);
tx[18] = Text_New(sdate,stime,저점+var1*0.236," 2%: "+NumToStr(저점+var1*0.236,0));
text_Delete(Tx[19]);
tx[19] = Text_New(sdate,stime,저점+var1*0.000," 0%:"+NumToStr(저점+var1*0.000,0));
text_Delete(Tx[20]);
tx[20] = Text_New(sdate,stime,저점-var1*0.236," -2%: "+NumToStr(저점-var1*0.236,0));
text_Delete(Tx[21]);
tx[21] = Text_New(sdate,stime,저점-var1*0.382," -3%: "+NumToStr(저점-var1*0.382,0));
text_Delete(Tx[22]);
tx[22] = Text_New(sdate,stime,저점-var1*0.500," -5%: "+NumToStr(저점-var1*0.500,0));
text_Delete(Tx[23]);
tx[23] = Text_New(sdate,stime,저점-var1*0.618," -6%: "+NumToStr(저점-var1*0.618,0));
text_Delete(Tx[24]);
tx[24] = Text_New(sdate,stime,저점-var1*0.764," -7%: "+NumToStr(저점-var1*0.764,0));
text_Delete(Tx[25]);
tx[25] = Text_New(sdate,stime,저점-var1*1.000," -1,0%:"+NumToStr(저점-var1*1.000,0));
text_Delete(Tx[26]);
tx[26] = Text_New(sdate,stime,저점-var1*1.236," -1,2%: "+NumToStr(저점-var1*1.236,0));
text_Delete(Tx[27]);
tx[27] = Text_New(sdate,stime,저점-var1*1.382," -1,3%: "+NumToStr(저점-var1*1.382,0));
text_Delete(Tx[28]);
tx[28] = Text_New(sdate,stime,저점-var1*1.500," -1,5%: "+NumToStr(저점-var1*1.500,0));
text_Delete(Tx[29]);
tx[29] = Text_New(sdate,stime,저점-var1*1.618," -1,6%: "+NumToStr(저점-var1*1.618,0));
text_Delete(Tx[30]);
tx[30] = Text_New(sdate,stime,저점-var1*1.764," -1,7%: "+NumToStr(저점-var1*1.764,0));
text_Delete(Tx[31]);
tx[31] = Text_New(sdate,stime,저점-var1*2.000," -2,0%:"+NumToStr(저점-var1*2.000,0));
text_Delete(Tx[32]);
tx[32] = Text_New(sdate,stime,저점-var1*2.236," -2,2%: "+NumToStr(저점-var1*2.236,0));
text_Delete(Tx[33]);
tx[33] = Text_New(sdate,stime,저점-var1*2.382," -2,3%: "+NumToStr(저점-var1*2.382,0));
text_Delete(Tx[34]);
tx[34] = Text_New(sdate,stime,저점-var1*2.500," -2,5%: "+NumToStr(저점-var1*2.500,0));
text_Delete(Tx[35]);
tx[35] = Text_New(sdate,stime,저점-var1*2.618," -2,6%: "+NumToStr(저점-var1*2.618,0));
text_Delete(Tx[36]);
tx[36] = Text_New(sdate,stime,저점-var1*2.764," -2,7%: "+NumToStr(저점-var1*2.764,0));
text_Delete(Tx[37]);
tx[37] = Text_New(sdate,stime,저점-var1*3.000," -3,0%:"+NumToStr(저점-var1*3.000,0));
text_Delete(Tx[38]);
tx[38] = Text_New(sdate,stime,dayopen," Open :"+NumToStr(dayopen,0));
}
Text_SetStyle(tx[1],5,2);
Text_SetStyle(tx[2],5,2);
Text_SetStyle(tx[3],5,2);
Text_SetStyle(tx[4],5,2);
Text_SetStyle(tx[5],5,2);
Text_SetStyle(tx[6],5,2);
Text_SetStyle(tx[7],5,2);
Text_SetStyle(tx[8],5,2);
Text_SetStyle(tx[9],5,2);
Text_SetStyle(tx[10],5,2);
Text_SetStyle(tx[11],5,2);
Text_SetStyle(tx[12],5,2);
Text_SetStyle(tx[13],5,2);
Text_SetStyle(tx[14],5,2);
Text_SetStyle(tx[15],5,2);
Text_SetStyle(tx[16],5,2);
Text_SetStyle(tx[17],5,2);
Text_SetStyle(tx[18],5,2);
Text_SetStyle(tx[19],5,2);
Text_SetStyle(tx[20],5,2);
Text_SetStyle(tx[21],5,2);
Text_SetStyle(tx[22],5,2);
Text_SetStyle(tx[23],5,2);
Text_SetStyle(tx[24],5,2);
Text_SetStyle(tx[25],5,2);
Text_SetStyle(tx[26],5,2);
Text_SetStyle(tx[27],5,2);
Text_SetStyle(tx[28],5,2);
Text_SetStyle(tx[29],5,2);
Text_SetStyle(tx[30],5,2);
Text_SetStyle(tx[31],5,2);
Text_SetStyle(tx[32],5,2);
Text_SetStyle(tx[33],5,2);
Text_SetStyle(tx[34],5,2);
Text_SetStyle(tx[35],5,2);
Text_SetStyle(tx[36],5,2);
Text_SetStyle(tx[37],5,2);
Text_SetStyle(tx[38],5,2);
Text_SetStyle(tx[39],5,2);
Text_SetStyle(tx[40],5,2);
Text_SetStyle(tx[41],5,2);
Text_SetStyle(tx[42],5,2);
Text_SetColor(tx[1],LGREEN);
Text_SetColor(tx[7],LGREEN);
Text_SetColor(tx[13],LGREEN);
Text_SetColor(tx[19],LGREEN);
Text_SetColor(tx[25],LGREEN);
Text_SetColor(tx[31],LGREEN);
Text_SetColor(tx[37],LGREEN);
Text_SetColor(tx[38],LMAGENTA);
Text_SetColor(tx[39],RED);
Text_SetColor(tx[40],BLUE);
Text_SetColor(tx[41],LGREEN);
Text_SetColor(tx[42],LGREEN);
Text_SetColor(tx[2],RED);
Text_SetColor(tx[3],MAGENTA);
Text_SetColor(tx[4],MAGENTA);
Text_SetColor(tx[5],RED);
Text_SetColor(tx[6],RED);
Text_SetColor(tx[8],RED);
Text_SetColor(tx[9],MAGENTA);
Text_SetColor(tx[10],MAGENTA);
Text_SetColor(tx[11],RED);
Text_SetColor(tx[12],RED);
Text_SetColor(tx[14],RED);
Text_SetColor(tx[15],MAGENTA);
Text_SetColor(tx[16],MAGENTA);
Text_SetColor(tx[17],RED);
Text_SetColor(tx[18],RED);
Text_SetSize(tx[19],0);
Text_SetColor(tx[20],LBLUE);
Text_SetColor(tx[21],LBLUE);
Text_SetColor(tx[22],BLUE);
Text_SetColor(tx[23],BLUE);
Text_SetColor(tx[24],LBLUE);
Text_SetColor(tx[26],LBLUE);
Text_SetColor(tx[27],LBLUE);
Text_SetColor(tx[28],BLUE);
Text_SetColor(tx[29],BLUE);
Text_SetColor(tx[30],LBLUE);
Text_SetColor(tx[32],LBLUE);
Text_SetColor(tx[33],LBLUE);
Text_SetColor(tx[34],BLUE);
Text_SetColor(tx[35],BLUE);
Text_SetColor(tx[36],LBLUE);
2.
if Bdate != Bdate[1] Then{
var1 = V;
var2 = C;
var11 = var1[1];
var22 = var2[1];
Condition1 = false;
}
if V > var1 Then{
var1 = V;
var2 = C;
}
if Condition1 == false and V > var11 Then{
var3 = C;
Condition1 = true;
}
plot1(var3);
$,고맙습니다.
2020-05-14
1402
글번호 138881
새벽에 님에 의해서 삭제되었습니다.
2020-05-14
2
글번호 138878
답변완료
수식 의뢰 부탁드립니다.
개발자님의 노고에 항상 감사드립니다
진입조건은 최고점 돌파 시 최고점 매수, 최저점 돌파시 최저점 매도 입니다
반면에 청산은 최고점/최저점이 아닌 종가에 청사하려고 합니다
아래 수식을 사용하니 잘 안 되서 문의드립니다
Input: length(1),trailingstop(1);
var1 = highest(H,trailingstop);
var2 = Lowest(L,trailingstop);
Buy("long",AtStop,Highest(High,length));
Sell("short",AtStop,Lowest(Low,length));
if CrossDown(c,var2) Then
ExitLong("EL",AtStop,Close);
if CrossUp(c,var1) Then
ExitShort("ES",AtStop,Close);
감사합니다
2020-05-14
1370
글번호 138876
답변완료
예스 스팟 종목 검색 문의2
안녕하세요.
yestrader가 처음이라서 모르는게 많아서 기초 적인 수식 및 질문 드립니다.
제가 원하는것은 "틱단위로 종목 검색 후 자동 매매"를 하고 싶습니다.
매수 조건 (주식)
1. 30틱 기준, 거래량이 1봉전(30틱) 보다 현 30틱에서 거래량 300%이상 발생.
2. 30틱 기준, 주가등락률이 1봉전(30틱) 보다 현 30틱에서 주가가 1.5%이상 상승.
3. 30틱 기준 거래대금은 아래 조건 참조.
시가총액 800억 이하 종목은 30틱 거래대금 4억 이상
시가총액 801억~1500억 종목은 30틱 거래대금 5억 이상
시가총액 1501억 이상 종목은 30틱 거래대금 6억 이상
2020-05-14
1388
글번호 138871