커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7669
글번호 230811
답변완료
야간선물 시간표시
if stime >= 180000 or stime < 044500 Then{
}
if stime == 044500 then{
exitlong();
ExitShort();
}
이렇게 표시해도
시스템성능보고서엔 아래와 같이 0445분에 데이로 끝나지 않고
오버가 되어 1800에 청산됩니다...궁금..??
2012-02-16 2:42 매도 _SellNo1 265.45 1 1.09 2.95
2012-02-16 18:00 매도청산(당일청산) StopEndOfDay 262.55 2.9
2012-03-23
461
글번호 49280
답변완료
다시 부탁드립니다.
답변 감사합니다.
var : ma1(0),ma2(0),ma3(0),ma4(0),ma5(0),
L1(0),L2(0),L3(0),L4(0),L5(0);
ma1 = ma(c,3);
ma2 = ma(c,5);
ma3 = ma(c,10);
ma4 = ma(c,20);
ma5 = ma(c,60);
var1 = NthMaxList(1,ma1,ma2,ma3,ma4,ma5);
var2 = NthMaxList(2,ma1,ma2,ma3,ma4,ma5);
var3 = NthMaxList(3,ma1,ma2,ma3,ma4,ma5);
var4 = NthMaxList(4,ma1,ma2,ma3,ma4,ma5);
var5 = NthMaxList(5,ma1,ma2,ma3,ma4,ma5);
var1은 가장큰 수치
var2은 두번째 큰 수치
...
var5은 가장 작은수치로 설정은 했는데..
한가지, var4와 var5가 거의 비슷한 수치일 경우 따로 나누지 않고
하나의 가격대로 인식할수있었으면 합니다.
가령 L1을 제일 저가로 잡을경우 각변수들(var4,var5....)중
var5와 var4가 0.5이내의 수치라면 그중 저가를 L1으로 잡고, var3를 L2로, ...
또 var3와 var2가 0.5이내의 수치라면
L1은 var5, L2는 var4로, L3는 var3와 var2중 저가를, L4는 var1으로 ..
감사합니다
2012-03-23
365
글번호 49279
답변완료
한번더 질문합니다
> Input : Period(10), rate(0.001);
var1 = ma(H,period)*(1+rate);#상한채널
var2 = ma(H,period);#상한선
var3 = ma(L,period);#하한선
var4 = ma(L,period)*(1-rate);#하한채널
if crossup(c,var3) Then
buy();
if CrossDown(c,var3) Then
ExitLong();
SetStopLoss(3,PercentStop);
위에수식은 mac하선돌파 매수 하선이탈 -3%시매도되는 식이맞읍니까
아님 매수가-3%매도입니까
여기서 종합적으로 질문합니다....^^
저는 시시템식이라하여 장중네네 지켜볼수없기에 수식을 만들어서
사용할려구 하는데..장중에는 매수매도가 안되다하니 조금이상하구요.
지표돌파하구 장끝나구 다음날 매수가 되면은 주가는벌써 저만치 올라가
있는데 매수한다는게 안맞는것 같읍니다...
시스템식에서 걱정하는것은 mac지표 하선 돌파하구 금방 지표하선이탈 하면은
바로매도 되는것때문에 그런것 같은데 그래서 제가 지표하선 이탈하구-3%로 되면은
매도 -3%안돠면은 홀딩
-3%이탈하여 매도되구 다시지표하선 돌파하면 바로매수 이렇게 하면은 될것 같읍니다
시스템식인데 장중매수매도가 안된다는 것이 이해가 안갑니다
제가초보라서 글이 조금이상하더라두 이해해주시길 바랍니다...
다시한번 간곡히 부탁드려봅니다
MAC 하선 돌파시 장중매수 매수하고나서 금방 MAC하선 이탈해두바로매도가
아니고 MAC하선 이탈하구 -3%로되면은(매수가에서-3%로아님) 바로매도
다시 MAC하선 돌파시 자동매수(바로매수)가 되는 시스템식 부탁합니다
위에 시스템식에서 바로 매수매도 되는 기능만 추가 하면은 될것 같읍니다
2012-03-23
347
글번호 49278
답변완료
문의드립니다.
안녕하세요?
아래의 식 작성을 요청드립니다.
매수식
증권 콜옵션순매수 금액 + 외국인 선물매수금액 > 개인 콜옵션순매수 금액 + 개인 선물매수금액 일때 매수
매도식
증권 콜옵션순매수 금액 + 외국인 선물매수금액 < 개인 콜옵션순매수 금액 + 개인 선물매수금액 일때 매도
2012-03-23
365
글번호 49277
답변완료
다시한번 문의 드립니다.
if ExitDate(1) != sdate and cond == false And #당일 첫진입이고 cond는 false일대
MarketPosition == 0 and stime == 112000 and #현재 무포지션이고 9시 30분봉이고
data2(C <= dayclose(1)*0.985 and C <= dayclose(1)*1.02) and #참조데이터의 현재값은 전일종가대비 -1.5%~+2.0%사이
mav2 > mav3 and #일봉이평은 정배열
data1(C >= DayClose(1)*0.95 and C >= DayClose(1)*1.01) then #주종목의 현재값은 전일종가대비 -5%~+1.0%사이
buy("1차매수",onclose,def,Vol1);
여기에서 잘못된 부분과 아까 이야기 드린 지정한 날짜 부터 신호를 받고 싶은데 그렇게 하면
일봉 이평같은 신호를 가져 올수 있는건가요? 식이 잘못된 것인지
신호가 나오질 않습니다.
뭐가 잘못된 것인지 판가름 할수가 없어서 다시 한번만 수정 부탁 드릴께요..
감사합니다...
2012-03-23
376
글번호 49271
답변완료
다시문의합니다
다시문의 합니다
밑에 시스템식은 보조지표 MAC 지표입니다
시스템식을 만들어주신 곳이 여긴데 mac가뭐냐구 물으면 어케합니까.
봉이 완성되는 순간 조건을 만족하지 않기 때문에 매수가 안되었다는 것인데
그림에서 보면은 녹색선이 mac보조지표 선입니다 돌파하구도 많이 올랐지요
3%이상 올랐는데도 매수가 되지않읍니다
그럼 수식이 제가원하했던 수식이 아니였는것 같읍니다
그럼 다시 시스템식을 부탁합니다
주가가 mac하선돌파시 바로매수(종가가 아니고 장중 돌파시바로매수) 이고 mac하선하락돌파하면은 바로매도가 아니고
하락돌파시부터-3%로 하락 하면은 자동매도(종가가아니고-3%일때 장중 바로매도)이고 다시mac하선돌파시는 바로매수가
되록 수정부탁합니다
안녕하세요? 예스스탁입니다.
올려 놓으신 식은 종가가 저가 이평선을 상향돌파할때 매수이고, 하향이탈할때 매도하는 식입니다. 봉중간에 예비신호가 나왔다가 사라지는 경우는 봉이 진행되는 도중에는 조건을 만족했지만, 봉이 완성되는 순간 조건을 만족하지 않기 때문에 사라지는 것입니다.
그리고 주문 가격과 신호의 발생여부는 서로 상관이 없습니다.
mac가 무엇인지 알 수 없는데, 이 내용을 정의해 주시면 말씀하신 식을 추가로 답변드리겠습니다.
감사합니다.
> 질갱이 님이 쓴 글입니다.
> 제목 : 문의
> Input : Period(10), rate(0.001);
var1 = ma(H,period)*(1+rate);#상한채널
var2 = ma(H,period);#상한선
var3 = ma(L,period);#하한선
var4 = ma(L,period)*(1-rate);#하한채널
if crossup(c,var3) Then
buy();
if CrossDown(c,var3) Then
ExitLong();
SetStopLoss(3,PercentStop);
늘빠른답변에 감사을표합니다
처음으로 돌려보는 시스템입니다
위에 시스템식은 mac돌파시 매수 mac이탈-3% 자동매도 되는식입니다
첨부한 그림에서 보면은 녹색선이 mac입니다 주가가mac을 돌하였는데
예비신호만 표시되고 실제 매수는 안되였읍니다 매수는 현재가 매도는 현재가+-3
으로 되여있읍니다 왜그런가요 ..장중입니다.
위에수식이 mac돌파시 바로매수 이고 mac하락돌파하면은 바로매도가 아니고
하락돌파시부터-3%로 하락 하면은 자동매도이고 다시mac돌파시는 바로매수가
되록 수정부탁합니다 위에 수식이 제가 원하느것 맞나요
2012-03-23
475
글번호 49269
답변완료
궁금한 점들... 부탁드려요~
안녕하세요
어제 답변해주신 내용 잘 보았습니다. 감사합니다.
추가로 더 질문 좀 드릴께요
1. 예스트레이더를 보면 종목검색에 [예스매매신호]라는 탭이 있습니다.
종목을 클릭해서 차트를 보면 화살표가 위에 표시되는 경우가 있고 아래에 표시되는 경우가 있는데 둘의 차이점이 무엇인가요?
2. 당일 [예스매매신호] 종목은 언제 집계되나요? 장 종료 후 인가요?
현재시각 4:25분인데 나갔다왔더니 종목이 22일 기준으로 바뀌었더라고요
3. 장종료후 3:30~6:00 까지 하는 거래는 어디서 하는건지요
(다른 증권사는 시간외 단일가 주문이라고 하더군요)
감기 조심하세요~
감사합니다.
2012-03-23
401
글번호 49260
답변완료
수식 문의 드립니다.
제가 시스템 적용시작을 오늘 하게 되면 검은색 박스 안에서 첫번째 매수가 시작되어야하는데.
이전 데이타 값들 때문에 매수가 되지 않고 오히려 파락색 박스 다음신호가 나옵니다.
이전신호들을 무시하고 원하는 시점부터 1번째 매매 신호를 내보낼수 잇는 방법이
있을까요?
적용 방법을 자세히 알려 주세요.
그리고
data2(C <= dayclose(1)*0.985 and C <= dayclose(1)*1.02) and #참조데이터의 현재값은 전일종가대비 -1.5%~+2.0%사이
때 매수되는 식인데요 문제가 있는지 잘 되지 않습니다. 확인해 주세요..
비가 옵니다. 봄비에요. ^^
2012-03-23
408
글번호 49258
답변완료
질문드립니다.
바쁘신데 죄송합니다.
변환과 해석 부탁합니다
Input: ups(0.1), dns(0.1), gapup(0.29), gapfill(0.18), s2(2.7)
If opend>highd(1) Then
Var1=100*((opend-highd(1))/highd(1))
End If
If opend<lowd(1) Then
Var1=100*((lowd(1)-opend)/lowd(1))
End If
If tdate<>tdate(1) Then
Var50=currententrynum
End If
Cond1=exitdate(1)=tdate And position(1)=1
Cond2=exitdate(1)=tdate And position(1)=-1
If currententrynum-var50<=2 Then
If ttime <1500 Then
If opend>highd(1) And Var1>ups Then
If Cond1=False Then
Call buy("GapUp매수",Atstop,Def,opend+(highd(1)-lowd(1))*gapup)
End If
If Cond2=False Then
Call sell("GapFill매도",Atstop,Def, _
max(highd(1),opend-(highd(1)-lowd(1))*gapfill))
End If
End If
If opend<lowd(1) And Var1>dns Then
If Cond2=False Then
Call sell("GapDown매도",Atstop,Def,opend-(highd(1)-lowd(1))*gapup)
End If
If Cond1=False Then
Call buy("GapFill매수",Atstop,Def,_
min(lowd(1),opend+(highd(1)-lowd(1))*gapfill))
End If
End If
End If
End If
If position<>0 Then
Call exitlong("매수추적",Atstop,hhv(1,high,barnumsinceentry+1)-atr(20)*S2)
Call exitshort("매도추적",Atstop,llv(1,low,barnumsinceentry+1)+atr(20)*S2)
End If
2012-03-23
369
글번호 49256