커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내

안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
프로필 이미지
예스스탁
2026-02-27
7717
글번호 230811
지표
답변완료

시스템식부탁드립니다.

수고가 많으십니다. 기준봉 60분봉 현재60분봉종가가 저점종가보다 3% 이상 상승시 매수청산 현재60분봉종가가 고점종가보다 3% 이상 하락시 매도청산 항상 감사합니다
프로필 이미지
회원
2011-06-16
676
글번호 39873
시스템
답변완료

시스템

시초 선물1분봉 진입시 처음봉 다음부터(즉2번째 봉부터) 시스템 작동부탁드림니다. 감사합니다 input : value1(0.5), value2(0.5); var : cnt(0), bpos(0), bval(0), spos(0), sval(0); var : bpos2(0), bval2(0), spos2(0), sval2(0); //최초 진입이 매수일 경우 if date != date[1] then { cnt = 0; bpos = 0; spos = 0; } if cnt==0 and C > H[1]+value1 then { buy("B최초진입"); bpos = 1; bVal = C; cnt = 1; } if bpos == 1 and crossUp(C,bval+value2) then { exitlong("B종료1"); bpos = 0; } if bpos == 1 and crossdown(C,bval-value2) then { sell("B재진입1"); sVal = C; spos = 1; bpos = 0; } if spos == 1 and crossdown(C,sval-value2) then { exitshort("B종료2"); spos = 0; } if spos == 1 and crossup(C, sval+value2) then { sell("B재진입2"); bval = C; spos = 0; bpos = 1; } //최초 진입이 매도일 경우 if date != date[1] then { bpos2 = 0; spos2 = 0; } if cnt==0 and C > L[1]-value1 then { buy("S최초진입"); spos2 = 1; sVal2 = C; cnt = 1; } if spos2 == 1 and crossdown(C,sval2-value2) then { exitshort("S종료1"); spos2 = 0; } if spos2 == 1 and crossup(C,sval2+value2) then { buy("S재진입1"); bVal2 = C; bpos2 = 1; spos2 = 0; } if bpos2 == 1 and crossup(C,bval2+value2) then { exitlong("S종료2"); bpos2 = 0; } if bpos2 == 1 and crossdown(C, bval2-value2) then { buy("S재진입2"); sval2 = C; bpos2= 0; spos2 = 1; }
프로필 이미지
외국인
2011-06-16
655
글번호 39872
시스템
답변완료

재진입(재질문_전저점)

항상 친절한 답변 감사합니다. 아래의 식이 제가 수정해보고있는 수식인데요. 전저점에서 진입이 안되네요. 어디가 잘못되었는지 알려주세요. 그 아래의 식은 제가 테스트해본건데요, 여기서는 전저점 진입이 됩니다. 어떤 차이점때문인지 모르겠네요. 답변 부탁드립니다. --------------재진입이 안되는 수식(연결선물5분봉)------------------------------- Input: FastLen(10), SlowLen(500), ChLen(30), TrailBar(160), ReBars(100); Vars: FastMA(0), SlowMA(0),LEntryPrice(0), SEntryPrice(0), LCount(-999), SCount(-999), ReCnt(0), MP(0); FastMA = ma(C , FastLen ); SlowMA = ma(C , SlowLen ); If CrossUp(FastMA , SlowMA) and index > 1 then { LEntryPrice = Highest(H , TrailBar )[1]; LCount = index; } If MarketPosition <> 1 AND index < LCount + ChLen then Buy ("Cross Over Buy", atstop,LEntryPrice); If CrossDown(FastMA , SlowMA) and index > 1 then { SEntryPrice = Lowest(L , TrailBar )[1]; SCount = index; } If MarketPosition <> -1 AND index < SCount + ChLen then Sell ("Cross Under Sell", atstop,SEntryPrice ); If MarketPosition == 1 then { LCount = -999; ExitLong ("LongTStop", atstop, Lowest(L , TrailBar )); } If MarketPosition == -1 then { SCount = -999; ExitShort ("ShortTStop", atstop, Highest(H , TrailBar )); } //재진입 MP = MarketPosition; If MP == 0 AND MP[1] == -1 then ReCnt = 1; If MP == 0 AND MP[1] == 1 then ReCnt = 1; If MarketPosition == 0 AND MarketPosition(1) == -1 and IsExitName("ShortTStop",1) == True AND ReCnt < ReBars then { ReCnt = ReCnt + 1; Sell ("sell_2nd", AtStop, Lowest(L,BarsSinceEntry)[BarsSinceExit(1)]); } ----------------테스트수식(연결선물일봉)------------------------------------- Input : Period(25), Dv(1.5); Var : BBup(0), BBdown(0), 가격(0), 추세(0), MP(0), Recnt(0); BBup = BollBandUp(period,Dv); BBdown = BollBandDown(period,Dv); 가격 = ma(C,3); 추세 = ma(C,period); if MarketPosition == 0 or -1 Then { if CrossUp(가격,BBup) Then Buy("BL"); } if MarketPosition == 0 or 1 Then { if CrossDown(가격,BBdown) Then sell("SS"); } if MarketPosition == 1 and IsEntryName("BL",0) == True Then { if CrossDown(가격,추세) and 가격 > BBdown Then ExitLong("EL"); } if MarketPosition == -1 and (IsEntryName("SS",0) == True or IsEntryName("SS2",0) == True) Then { if CrossUp(가격,추세) and 가격 < BBup Then ExitShort("ES"); } If MarketPosition == 0 AND MarketPosition(1) == -1 then { If IsExitName("ES",1) == True then { Sell ("SS2", AtStop, (lowest(L,BarsSinceEntry)[BarsSinceExit(1)]-2)); } }
프로필 이미지
공감n감사
2011-06-16
632
글번호 39869
시스템
답변완료

시뮬레이션

1. 주식 시뮬레이션에서 매도~매수 사이가 하락일 때 포지션이 없는데도 손실로 처리되네요, 그래서 maxcoseclosers 를 사용할때 차이가 발생합니다. 어떻게 해결하나요? 2. 1분봉으로 9시부터 시뮬레이션은 할수없나요?
프로필 이미지
bwr
2011-06-16
687
글번호 39868
시스템
답변완료

지표식 문의.

만약 30분이상 시가대비 + - 0.8사이에 있다면 횡보로 표시 하기 위해 물어서 아래와 같은 답변을 받아 지표로 표시 하려고 아래와 같이 작성 했는데요. 금일 6월 16일 장 보면 현재 if Condition1 then{ var1 = O; var2 = H; var3 = L; var4 = TimeToMinutes(stime); var5 = sdate; } if H > var2 Then var2 = H; if L < var3 Then var3 = L; if sdate == var5 And TimeToMinutes(stime) >= var4+30 and var2 < var1+1 And var3 > var1-1 then{ var2=h; var3=l;} plot1(var2,"H",red); plot2(var3,"L",blue); MessageLog(" %.2f %.2f",var2,var3); 11시 반이후 표시가 되어야 하는데 전혀 표시가 되지 않습니다. 랭귀지 공부하고 있는데도 이부분은 잘 모르겠네요. 의도한 대로라면 오늘 11시 반이후 12시가 되는 시점에 위 식이 성립되어 표시가 되어야 하는데 안되고 있네요. 다시 한번 봐주세요.
프로필 이미지
하루하루
2011-06-16
669
글번호 39867
지표
답변완료

재문의

뭔가 이상한데요 직전 봉이 양봉이면 현재봉 시가에 매수 현재봉이 양봉으로 끝나면 포지션 유지이고 현재봉이 음봉으로 끝나면 다음봉 시가에 청산후 신규매도 이런수식인데 좀 전에 작성해 주신건 이렇게 안되는거 같습니다.
프로필 이미지
무사시
2011-06-16
695
글번호 39864
시스템
답변완료

신호 경보음

같이 질문드린다는 것이 깜박했습니다. 죄송~ ^^;; 분봉에서 data2 에 거래량 지표가 있다고 가정하면, (즉 지표식이 있을 때) plot1(V); 으로 표시된 지표식이 있게 될텐데, 만약 해당 거래량이 10,000 이상 발생되는 순간부터 경보음을 울리라는 것을 지표식에서도 적용할 수 있는지요? (분봉이 완성되기 전에라도 조건충족시 해당봉 완성시까지 계속 경보음 발생) 부탁드리겠습니다. 감사합니다~
프로필 이미지
새로운세상
2011-06-16
606
글번호 39861
시스템
답변완료

디버깅 관련..

if date != date[1] Then{ var1= H; } if H > var1 Then{ var1 = H; ClearDebug;#출력된 디버깅창의 내용을 지움 messagelog("%.2f",var1); } 위 내용상 이전값이 다 clrea 되버리던데요. 갱신 될때 새로 갱신된 값은 나두고 2봉이상 연속으로 출력(갱신 안되는 값)들만 clear 시킬수 있나요?
프로필 이미지
하루하루
2011-06-16
664
글번호 39858
지표
답변완료

예제 파일 지표식으로 변환 부탁드립니다.

Input:value(2.7),p1(36),p2(28),p3(5),stopPer(1); Var: chUp(0), chDn(0),slowK(0),slowD(0), Bap(0); setstoploss(StopPer); chUp=dayOpen()+(DayHigh(1)-DayLow(1))/Value; chDn=dayOpen()-(DayHigh(1)-DayLow(1))/Value; slowK=StochasticsK(p1,p2); slowD=StochasticsD(p1,p2,p3); bap=(daylow()+dayhigh())/2; if CrossUp(slowK,slowD)then {var1=C;var5=1;} if CrossDown(slowK,slowD)then {var2=C;var6=1;} 예스스탁 시스템 정기교육자료에 나온시스템 식의 일부입니다. 지표식으로 부탁 좀 드리겠습니다. 전일 고가와 저가 평균가에서 위아래 27% 채널선이 그어지는 지표가 맞는지요? 감사합니다.
프로필 이미지
풍운
2011-06-16
685
글번호 39856
지표