커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1631
글번호 230811
답변완료
함수요청
안녕하세요?
국내선물을 거래하고자 합니다.
아래의 전략에 스크립트 작성 요청드립니다.
30분봉으로 거래를 하고자 합니다.
당일 시초가가 전영업일 종가 대비 상승출발하고 30분봉으로 당일 첫 음봉발생시 익봉시가에 매수진입
당일 시초가가 전영업일 종가 대비 하락출발하고15 30분봉으로 당일 첫 양봉발생시 입봉시가에 매도진입
15시 강제청산으로 매수든 매도는 일 최대 1번 진입입니다.
감사합니다.
2022-11-07
1080
글번호 163590
답변완료
문의 드립니다.
input : starttime(140000),endtime(550000),n(30);
var : Tcond(false),hh(0),h1(0),ll(0),l1(0);
if (sdate != sdate[1] and stime >= endtime) or
(sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then
{
Tcond = false;
if MarketPosition == 1 Then
ExitLong("bx");
if MarketPosition == -1 Then
ExitShort("sx");
}
if (sdate != sdate[1] and stime >= starttime) or
(sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then
{
Tcond = true;
hh = h;
ll = l;
h1 = hh[1];
l1 = ll[1];
}
if h > hh Then
hh = h;
if l < ll Then
ll = l;
if tcond == true and h1 > 0 and l1 > 0 then
{
if crossup(C,l1+(h1-l1)*1.000+PriceScale*n) Then
buy();
if crossup(C,l1-(h1-l1)*0.618+PriceScale*n) Then
buy();
if crossup(C,l1+(h1-l1)*0.500+PriceScale*n) Then
buy();
if crossup(C,l1+(h1-l1)*0.236+PriceScale*n) Then
buy();
if crossup(C,l1+(h1-l1)*0.000+PriceScale*n) Then
buy();
if CrossDown(C,l1+(h1-l1)*1.000-PriceScale*n) Then
sell();
if CrossDown(C,l1-(h1-l1)*0.618-PriceScale*n) Then
sell();
if CrossDown(C,l1+(h1-l1)*0.500-PriceScale*n) Then
sell();
if CrossDown(C,l1+(h1-l1)*0.236-PriceScale*n) Then
sell();
if CrossDown(C,l1+(h1-l1)*0.000-PriceScale*n) Then
sell();
}
if MarketPosition == 1 then
{
if crossup(c,h1+PriceScale*10) Then
exitlong();
if CrossDown(c,l1-PriceScale*10) Then
exitlong();
}
if MarketPosition == -1 then
{
if crossup(c,h1+PriceScale*10) Then
ExitShort();
if CrossDown(c,l1-PriceScale*10) Then
ExitShort();
}
위 수식어에 아침 06시00분에 강제청산되는식을 부탁드립니다.
--------------------------------------------
if NextBarSdate != sDate Then
{
if NextBarOpen > C Then
{
Buy("b2",AtStop,NextBarOpen+PriceScale*10);
Sell("s2",AtStop,NextBarOpen-PriceScale*10);
}
if NextBarOpen < C Then
{
ExitLong("bx2",AtStop,NextBarOpen-PriceScale*10);
ExitShort ("sx2",AtStop,NextBarOpen+PriceScale*10);
}
}
if MarketPosition > 1 Then
Sell("sss",AtStop,EntryPrice-10);
if MarketPosition < -1 Then
Buy("sss1",AtStop,EntryPrice+10);
if NextBarOpen > C Then
{
Buy("b3",AtStop,NextBarOpen+PriceScale*10);
Sell("s3",AtStop,NextBarOpen-PriceScale*10);
}
if NextBarOpen < C Then
{
ExitLong("bx3",AtStop,NextBarOpen-PriceScale*10);
ExitShort ("sx3",AtStop,NextBarOpen+PriceScale*10);
}
if MarketPosition > 1 Then
Sell("ssss",AtStop,EntryPrice-10);
if MarketPosition < -1 Then
Buy("ssss1",AtStop,EntryPrice+10);
if NextBarOpen > C Then
{
Buy("b4",AtStop,NextBarOpen+PriceScale*10);
Sell("s4",AtStop,NextBarOpen-PriceScale*10);
}
if NextBarOpen < C Then
{
ExitLong("bx4",AtStop,NextBarOpen-PriceScale*10);
ExitShort ("sx4",AtStop,NextBarOpen+PriceScale*10);
}
if MarketPosition > 1 Then
Sell("sssss",AtStop,EntryPrice-10);
if MarketPosition < -1 Then
Buy("sssss1",AtStop,EntryPrice+10);
매매시간 (09:00~ 익일 05:55) 추가를 부탁드립니다.
2022-11-08
1381
글번호 163589
답변완료
부탁드립니다
수고하십니다
재질문 입니다
어떻게 응용해야할지 도져히 감이 잡히지 않아서 요 ~~ㅠㅠ
예시 내지 힌트 좀 주시면 제가 해볼게요(안될까요???)
2022-11-07
1252
글번호 163587
답변완료
문의 드립니다.
input : Per1(23.6),Per2(38.2),Per3(50.0),Per4(61.8),Per5(76.4);
var : HH(0),LL(0);
if date > date[1]+1 Then{
HH = H;
LL = L;
}
if H > HH Then
HH = H;
if L < LL Then
LL = L;
var1 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per1/100));
var2 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per2/100));
var3 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per3/100));
var4 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per4/100));
var5 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per5/100));
plot1(HH,"H");
plot2(var1,"23.6");
plot3(var2,"38.2");
plot4(var3,"50.0");
plot5(var4,"61.8");
plot6(var5,"76.4");
plot7(LL,"L");
-----------------------------------------------
위 피보나치 지표식을 아래 시스템에 접목하고 싶습니다.
input : starttime(101500),endtime(550000),n(30);
var : Tcond(false),hh(0),h1(0),ll(0),l1(0);
if (sdate != sdate[1] and stime >= endtime) or
(sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then
{
Tcond = false;
if MarketPosition == 1 Then
ExitLong("bx");
if MarketPosition == -1 Then
ExitShort("sx");
}
if (sdate != sdate[1] and stime >= starttime) or
(sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then
{
Tcond = true;
hh = h;
ll = l;
h1 = hh[1];
l1 = ll[1];
}
if h > hh Then
hh = h;
if l < ll Then
ll = l;
if tcond == true and h1 > 0 and l1 > 0 then
{
if crossup(C,l1+(h1-l1)*1.000+PriceScale*n) Then
buy();
if crossup(C,l1-(h1-l1)*0.618+PriceScale*n) Then
buy();
if crossup(C,l1+(h1-l1)*0.500+PriceScale*n) Then
buy();
if crossup(C,l1+(h1-l1)*0.236+PriceScale*n) Then
buy();
if crossup(C,l1+(h1-l1)*0.000+PriceScale*n) Then
buy();
if CrossDown(C,l1+(h1-l1)*1.000-PriceScale*n) Then
sell();
if CrossDown(C,l1-(h1-l1)*0.618-PriceScale*n) Then
sell();
if CrossDown(C,l1+(h1-l1)*0.500-PriceScale*n) Then
sell();
if CrossDown(C,l1+(h1-l1)*0.236-PriceScale*n) Then
sell();
if CrossDown(C,l1+(h1-l1)*0.000-PriceScale*n) Then
sell();
}
if MarketPosition == 1 then
{
if crossup(c,h1+PriceScale*10) Then
exitlong();
if CrossDown(c,l1-PriceScale*10) Then
exitlong();
}
if MarketPosition == -1 then
{
if crossup(c,h1+PriceScale*10) Then
ExitShort();
if CrossDown(c,l1-PriceScale*10) Then
ExitShort();
}
2022-11-08
995
글번호 163586
답변완료
당일 시가기준 당일1개의 일봉 내에서의 분할매수 가능여부?
안녕하세요?
당일시가(09시)에 매수후 상승시에 원하는 요율 위치별로 익절은 되는데,
1. 당일시가 매수금액 위치보다 일정비율 하락할 경우 추가 분할매수가 가능한지요?
->분봉기준이 아닌 당일 일봉기준에서..
2. 된다면 수식은 어떻해 되는지요?
항상 감사합니다.
2022-11-07
779
글번호 163582
회원 님에 의해서 삭제되었습니다.
2022-11-08
51
글번호 163576
답변완료
파라볼릭 쓰리바닥 쓰리봉 분리
Input : af(0.02), maxAF(0.2),상(1),하(1);
Var : Sarv(0),tl(0),T(0);
Sarv = sar(af,maxAF);
If crossup(c,Sarv) Then
{
T = 1;
var1 = Sarv;
Var2 = var1[1];
Var3 = var2[1];
Condition1 = False;
if var1 <= var2+PriceScale*상 and var1 >= var2-PriceScale*하 and
var2 <= var3+PriceScale*상 and var2 >= var3-PriceScale*하 and var3 > 0 Then
{
Condition1 = true;
TL = TL_New(sDate,sTime,0,sDate,sTime,99999999);
TL_SetColor(TL,Red);
TL_SetSize(TL,0.5);
}
}
if CrossDown(C,sarv) Then
{
T = -1;
value1 = Sarv;
value2 = value1[1];
value3 = value2[1];
Condition2 = False;
if value1 <= value2+PriceScale*상 and value1 >= value2-PriceScale*하 and
value2 <= value3+PriceScale*상 and value2 >= value3-PriceScale*하 and value3 > 0 Then
{
Condition2 = true;
TL = TL_New(sDate,sTime,0,sDate,sTime,99999999);
TL_SetColor(TL,Blue);
TL_SetSize(TL,0.5);
}
}
Else
{
if T == 1 Then
{
if sarv < var1 Then
{
var1 = sarv;
if Condition1 == False and var1 <= var2+PriceScale*상 and var1 >= var2-PriceScale*하 and
var2 <= var3+PriceScale*상 and var2 >= var3-PriceScale*하 and var3 > 0 Then
{
Condition1 = true;
TL = TL_New(sDate,sTime,0,sDate,sTime,99999999);
TL_SetColor(TL,Red);
TL_SetSize(TL,0.5);
}
}
}
if T == -1 Then
{
if sarv > value1 Then
{
value1 = sarv;
if Condition2 == False and value1 <= value2+PriceScale*상 and value1 >= value2-PriceScale*하 and
value2 <= value3+PriceScale*상 and value2 >= value3-PriceScale*하 and value3 > 0 Then
{
Condition2 = true;
TL = TL_New(sDate,sTime,0,sDate,sTime,99999999);
TL_SetColor(TL,Blue);
TL_SetSize(TL,0.5);
}
}
}
}
쓰리바닥과 쓰리봉을 각기 다른 두개의 수식으로 분리. 감사합니다.
2022-11-07
788
글번호 163574
답변완료
YesSpot Reference Error 문의드립니다
계좌정보를 받아들이기 위해 다음과 같은 수식을 썼는데, Spot이 전체적으로 'Get'함수를 인식하지 못하는 것 같습니다. 무엇을 확인해야 할까요?
스크립트
account = A1.GetBalanceETCinfo(9);
오류
TypeError: Cannot call method 'GetBalanceETCinfo' of undefined
비슷하게 종목객체에 대해서도 오류가 납니다
스크립트
종목 = 종목.GetOpenContracts();
오류
TypeError: Cannot call method 'GetOpenContracts' of undefined
2022-11-07
874
글번호 163570
답변완료
문의드립니다.
안녕하세요
수식 부탁 드립니다.
5일선이 20일선 골든 크로스 발생시
시가와 종가가 5일선 위에 있는 첫봉 고가부터
5일선이 20일선 데드 크로스 발생 후
시가와 종가가 5일선 밑에 있는 첫봉 고가까지
대각선으로 선을 긋고 싶습니다.
항상 감사드립니다.
2022-11-07
894
글번호 163559