커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4724
글번호 230811
답변완료
부탁드림니다.
아래수식전환해 주신건데요,선을 하나 추가해서
1:골드시 빨강색
2:데드시 검정색을 표현해주세요.
3:수식이 유로fx에서는 작동이 안됨니다(??)
수식:
Input : Period(20);
var : Slope(0);
Slope = LRS(C,Period);
Plot1(Slope,"LRS");
Plot2(Slope[5], "LRS 5봉전");
PlotBaseLine1(0, "기준선");
##참고##
input:p1(20);
var : aa(0);
aa = ema(c,p1);
if aa >= aa[1] Then
var1 = aa;
if aa <= aa[1] Then
var2 = aa;
plot1(var1);
plot2(var2);
2015-11-25
136
글번호 92731
답변완료
함수수정요청(N11-1)
안녕하세요?
아래의 식에서 매수, 매도 식을 변경하고 싶습니다.
단순하게 매수를 매도, 매도를 매수로, 매수 청산을 매도 청산으로, 매수 청산을 매도 청산으로 변경만 하는 것이 아닌,
원함수를 돌렸을 경우 진입신호와 청산신호의 시간도 동일하게 가지고 가고 싶습니다.
var : entry1(0);
var : ho1(0),OL1(0),HL1(0);
var : maho1(0),maOL1(0),maHL1(0);
var : cnt1(0),sumho1(0),sumOL1(0),sumHL1(0);
var : EntryCnt1(0);
var : V1(0),V2(0),V3(0),V4(0),V5(0);
var : V6(0),V7(0),V8(0),V9(0),V10(0);
if bdate != bdate[1] Then
entry1 = 0;
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
entry1 = entry1+1;
ho1 = Dayhigh-Dayopen;
OL1 = DayOpen-DayLow;
HL1 = DayHigh-DayLow;
sumho1 = 0;
sumOL1 = 0;
sumHL1 = 0;
for cnt1 = 1 to 10{
sumho1 = sumho1 + (dayhigh(cnt1)-dayopen(cnt1));
sumOL1 = sumOL1 + (DayOpen(cnt1)-DayLow(cnt1));
sumHL1 = sumHL1 + (DayHigh(cnt1)-DayLow(cnt1));
}
maho1 = sumho1/10;
maOL1 = sumOL1/10;
maHL1 = sumHL1/10;
V1 = dayopen(0)+maho1;
V2 = DayOpen(0)-maOL1;
V3 = DayOpen(0)+maHL1;
V4 = DayOpen(0)-maHL1;
V5 = NthMaxList(1,V1,V2,V3,V4);
V6 = NthMaxList(2,V1,V2,V3,V4);
V9 = NthMaxList(3,V1,V2,V3,V4);
V10 = NthMaxList(4,V1,V2,V3,V4);
V7 = (V5+V10)/2;
V8 = (V6+V9)/2;
if MarketPosition == 0 and entry1 == 0 Then{
if V7 > V8 Then
sell("s1",AtStop,v7);
if V7 < V8 Then
sell("s2",Atlimit,v8);
}
if MarketPosition == -1 and IsEntryName("s1") == true Then{
ExitShort("sp1",atlimit,V9);
ExitShort("sl1",AtStop,V6);
}
if MarketPosition == -1 and IsEntryName("s2") == true Then{
ExitShort("sp2",atlimit,V9);
ExitShort("sl2",AtStop,V6);
}
var : TF(0);
var : Xtime(0), Etime(false),cnt(0),mav1(0),mav2(0);
var : HV(0),LV(0),HV1(0),LV1(0),HV2(0),LV2(0);
Array : HH[50](0),LL[50](0),CC[50](0);
mav1 = ma(c,5);
mav2 = ma(C,20);
TF = TimeToMinutes(stime)%30;
if Bdate != Bdate[1] Then{
Etime = true;
if stime >= 090000 Then
Xtime = 050000;
Else
Xtime = 060000;
}
if Bdate != Bdate[1] or (TF < TF[1] and stime > stime[1]) or date != date[1] Then{
HH[0] = H;
LL[0] = L;
for cnt = 1 to 49{
HH[cnt] = HH[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
CC[cnt] = CC[cnt-1][1];
}
}
if H > HH[0] Then
HH[0] = H;
if L < LL[0] Then
LL[0] = L;
CC[0] = C;
if HH[25+2] > 0 Then{
HV = HH[0];
LV = LL[0];
HV1 = HH[1];
LV1 = LL[1];
HV2 = HH[2];
LV2 = LL[2];
for cnt = 0 to 25{
if HH[cnt] > HV Then
HV = HH[cnt];
if LL[cnt] < LV Then
LV = LL[cnt];
if HH[cnt+1] > HV Then
HV = HH[cnt+1];
if LL[cnt+1] < LV Then
LV = LL[cnt+1];
if HH[cnt+2] > HV Then
HV = HH[cnt+2];
if LL[cnt+2] < LV Then
LV = LL[cnt+2];
}
var1 = (HV+LV)/2;
var2 = (HV1+LV1)/2;
var3 = (HV2+LV2)/2;
if Etime == true then{
if MarketPosition == 0 and CC[0] > var1 and CC[1] < var2 and CC[2] < var3 and C >= daylow+0.5 Then
buy("b",AtMarket);
if MarketPosition == 1 and c <= highest(H,BarsSinceEntry)-0.5 and CrossDown(mav1,mav2) Then
ExitLong("bx",AtMarket);
}
}
if stime == Xtime or (stime > Xtime and stime[1] < Xtime) Then{
Etime = false;
ExitLong();
}
SetStopLoss(1.5,PercentStop);
SetStopProfittarget(3,PercentStop);
SetStopInactivity(3,10,PercentStop);
2015-11-25
130
글번호 92730
답변완료
수식과 종목검색 문의합니다!
안녕하세요
다음의 조건을 만족했을때 신호가 나오게 하고 싶습니다.
첫번째는
1. 오늘 주가가 20일간의 고가 돌파
2. 그날 거래대금 50억 이상
3. 그날 상승률 3%이상
에 해당하는 수식이 궁금합니다.
두번째는
과거 1년간 저런 조건이 나왔던 녀석들을 종목검색으로 찾을 수 있는지 궁금합니다
감사합니다!!
2015-11-25
147
글번호 92729
답변완료
부탁 드립니다.
항상 도움주셔서 깊이 감사 드립니다.
질문1)
예를들어 100틱차트에서 지정한 일시 이후에 현재까지 몇개봉이
생성 되었는지 알수 있는 방법이 있겠는지요?
수식1은 참고 지표 입니다.
질문2)
수식2),수식3)의 지정날자를 삭제하고
매일 같은 시간에 지표를 나타 나게 할수 있겠는지요?
미리 감사와 경배 드립니다.
수식1)참고지표
input : 지정봉수(50),지정일(20151125),지정시간(080000);
var : cnt(0);
if sdate == 지정일 and (지정시간 == stime or (stime > 지정시간 and stime[1] < 지정시간)) Then
Condition1 = true;
if Condition1 == true Then{
cnt = cnt+1;
if cnt == 지정봉수 Then
var1 = stime;
if cnt >= 지정봉수 Then
plot1(var1);
}
수식2)
var : RSIV(0),diff(0);
var : cond1(false),cond2(false),cond3(false);
RSIV = RSI(14);
if sdate == 20151120 and (stime == 153000 or (stime > 153000 and stime[1] < 153000)) then{
Cond2 = true;
var21 = RSIV;
}
if sdate == 20151120 and (time == 213000 or (time > 213000 and time[1] < 213000)) then
Cond2 = false;
if sdate > 20151120 then
Cond2 = false;
if cond2 == true then{
diff = RSIv-var21;
plot11(diff ,"지표");
}
PlotBaseLine1(0,"0");
수식3)
var : cond1(false),cond2(false),cond3(false);
RSIV = RSI(14);
if sdate == 20151120 and (stime == 080000 or (stime > 080000 and stime[1] < 080000)) then{
Cond2 = true;
var21 = RSIV;
}
if sdate == 20151121 and (time == 070000 or (time > 070000 and time[1] < 070000)) then
Cond2 = false;
if sdate > 20151121 then
Cond2 = false;
if cond2 == true then{
diff = RSIv-var21;
plot11(diff ,"지표");
}
PlotBaseLine1(0,"0");
2015-11-25
148
글번호 92728
답변완료
함수문의(221호)
안녕하세요?
함수문의 요청드립니다.
현재가가 직전봉 고점 돌파 즉시 매수, 직전봉 저점 돌파 즉시 매도입니다.
2015-11-25
112
글번호 92727
답변완료
함수의미 문의(221호)
아래의 함수가 의미하는 바는 무엇인가요?
if countif(C<O,1) == 1 Then
Sell("s",AtStop,Lowest(L,1)-PriceScale);
if countif(C>O,1) == 1 Then
Buy("b",AtStop,Highest(H,1)+PriceScale);
2015-11-25
111
글번호 92726
답변완료
글번호 45017번 재질문
안녕하세요?
글번호 45017번에서 답변해주셨던 지표
(해외선물 영업일 당일에 전일 고저점을 표시)
가 계속 잘나오다가 창을 닫고 새롭게 적용하니 나오지 않습니다.
확인 부탁드립니다.
if Bdate != Bdate[1] Then{
if Bdate == CurrentDate Then
Condition1 = true;
Else
Condition1 = false;
}
if Condition1 == true Then{
plot1(dayhigh(1));
plot2(daylow(1));
}
2015-11-25
114
글번호 92725
답변완료
부탁드립니다
해외선물 갭보정차트 에서
1.어제의 고가, 저가 수식
2.당일에 고가,저가,시가 수식.
2015-11-25
112
글번호 92724
답변완료
수식 부탁드립니다
안녕하세요.
수식 작성에 어려움이 있어 도움 요청드립니다.
양봉이후 도지 발생시 매도하고 손절은 양봉또는 도지중 고점으로 잡습니다. 손절선에 도달시 매수를 합니다.
반대로 음봉이후 도지 발생시 매수하고 손절은 음봉또는 도지중 저점으로 잡습니다. 손절선에 도달시 매도를 합니다.
청산시점 설정용 손절가와 목표가 변수 설정할 수 있게 부탁드립니다.
2015-11-24
122
글번호 92723