커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7438
글번호 230811
답변완료
조건이 있는 신고가 검색방법 문의드립니다
60분봉에서 200봉 이내 신고가를 검색할 수 있게 해주세요
조건
분봉 아닌 Bands Width지표값을 이용하고 싶습니다.
신고가가 신고가 이전 10~15개 봉 평균의 115% 넘는 조건의 신고가를 검색할 수 있게 해주세요
신고가[0] >= (신고가[10]+신고가[11]+신고가[12]+신고가[13]+신고가[14])/5
2015-12-16
155
글번호 93467
답변완료
문의 드립니다.
시가에서 진입을 +0.5(매수), -0.5(매도) 기준으로 방향을 설정 한다고 가정했을 때.
+0.5 터치해서 매수로 진입 후 +0.5익절 ,-0.5손절로 잡는다. 매수 진입 이후 +0.5 터치했을 때는 이익 실현하지 않고 손절을 +0.5 올린다.
진입이후 손절-0.5 익절 +0.5
2015-12-16
155
글번호 93466
관리자에 의해 프로그램 사용법 QnA로 이동되었습니다
2015-12-16
2
글번호 93465
답변완료
45493답변
같은종목 pp (0900-1500)에 에 적용하엿는데
왼쪽식은 원래 제어식이condition1,condition2 를 사용한 시스템이구요
오른쪽식은 수정해주신 제어식을 사용한 시스템입니다
보시다싶이 오른쪽 식에서 12월 8일 시스템에 당일두번쨰 진입이 먼저 나오네요
res1 진입은 당일첫진입이 청산되고 첫진입하고 반대방향 포지션만 나오게 코딩한겁니다
If condition2==True and 조건 Then
Sell("RES1", AtStop,a);
주간장종목에서 기타조건은 똑같고 제어식만 변경하엿는데 당일2번째 신호가 먼저나오니 변경식에문제가 잇는거 아닐가요 ?
기존 condition1,condition2 식을 변경하는 목적은 cu 종목에도 적용하기 위해서입니다
감사합니다
2015-12-16
183
글번호 93464
삼족오 님에 의해서 삭제되었습니다.
2015-12-16
25
글번호 93463
답변완료
부탁드립니다
45508관련입니다.
알려주신대로 신시가,신저가,신고가를 사용자함수로 만들고 시스템식에서 그것을 data2, data3 등에서 쓰려고 했더니, 검증을 통과하지 못하는군요. 어떻게 해야 하는지요.
참고로 아래롸 같이 표현했는데, 안 됩니다.
부탁드립니다.
data2의 신시가 data2(신시가)
data3의 신고가 data3(신고가)
data4의 신저가 data4(신저가) 등으로 했더니...
2015-12-16
142
글번호 93462
답변완료
지표문의
var1 = highest(C,15);
var2 = Lowest(C,15);
var3 = (var1+var2)/2;
plot1(var1,"최고가선");
plot2(var2,"최저가선");
plot3(var3,"중심선"); 봉이중심선위에 있을때핑크색 아래있을때는그린색이나올수있게 수식부탁드립니다~~
``
2015-12-16
161
글번호 93461
답변완료
봉표시
안녕하세요.
해선용입니다.
장시작후 고저 진폭이 가장 큰봉 출현시 텍스트와 알람출력
양봉시 위쪽에 텍스트 음봉시 아래쪽에 텍스트 출력
부탁드립니다.
2015-12-16
182
글번호 93460
답변완료
함수수정요청(11-1호, 봉으로 계산)
안녕하세요?
함수수정요청드립니다.
아래의 식이 10일 동안 가격의 움직임을 고려한 것인데
이것을 day 개념이 아닌 봉개념을 작성해보고 싶습니다.
가령 v1이 과거 10일치 (고가-시가) 평균 값을 당일 시가를 더한 값인데
과거 10개봉개 (시가-고가) 평균 값에 현재봉 시가를 더한 값을 산출하고 싶습니다.
나머지 변수 산식도 마찬가지입니다.
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();
}
2015-12-15
163
글번호 93459