커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식문의요

안녕하세요 1.제가 지정한 다음날 시가 매수요 2. 2차매수는 일봉상 주가가 5일선 아래로 떨어질 경우(5일선 터치하고 상승해도) 다음날 시가로 2차매수 3. 1차매수 가격 300만원, 2차매수가격 500만원 이렇게 나누어 입력해주세요 4. 매도는 2차 매수 끝난후에 5일선 회복후 상승하다 다시 음봉으로 5일선 아래로 떨어질경우(5일선 터치도 동일) 그 다음날 시가 매도 꼭 음봉캔들이어야 합니다 5. 매도 2번째는 평균 수익률이 80프로 이상일 경우 입니다
프로필 이미지
회원
2013-12-09
190
글번호 70281
시스템
답변완료

선물지표수식부탁드립니다

1Upticks의거래량이10개이상 1Downticks의거래량이10개이상을 하루누적분으로 만들어주세요부탁드립니다
프로필 이미지
회원
2013-12-09
191
글번호 70273
지표
답변완료

검색

안녕하세요 트릭스기울기영선돌파와 주가20이평동시에 돌파종목검색식부탁합니다
프로필 이미지
질갱이
2013-12-09
201
글번호 70272
검색
답변완료

시가매수 재문의

문의내용에 대한 답변은 감사드리나, 좀더 정확한 답변 부탁드립니다. 제가 원하는 것은 옵션만기일을 제외하고 시가매수하여 종가매도하는 간단한 내용입니다. 답변주신 수식을 적용해보니, 옵션만기일은 신호가 발생하지 않으나, 옵션만기 다음날도 신호가 발생하지 않고 있네요. 옵션만기 다음날은 신호가 발생하여야 합니다. 또다른 문제는 2013년 8월 8일의 경우 옵션만기일임에도 진입신호가 발생하였습니다. 바쁘시겠지만 좀 더 검토하셔서 정확하게 신호가 발생되는 수식 부탁드립니다. 감사합니다. ----------------------------------------------------------- 안녕하세요 예스스탁입니다. 해당식은 만기일 다음날만시초가에 신호가 발생하지 않는 식입니다. 위 내용이 맞으시면 해당식 정상적으로 신호가 발생하고 있습니다. 만약 만기일날에 시초가에 매수를 안하고자 하시면 아래와 같이 작성해 사용하셔야 합니다. 해당식은 전일 마지막봉에 if문을 충족시켜 다음날 시초가 들어올때 신호가 발생하는 것이므로 2번째 주 수요일에 StopTrading을 true로 만들어 다음날 시초가에 신호가 안나오게 하셔야 합니다. Var : ExitTime(150400),TimeDelay(0); Var : DateChecked(False), StopTrading(False); Var : va1(0), va2(0), va3(0); //옵션만기일 청산 va1= int(date/100)-int(date/10000)*100; va2= date - int(date/100)*100; va3= DayOfWeek(date); If va1%1 == 0 And va2 >= 8 And va2 <= 14 And va3 == 3 Then { StopTrading = True; } If STime == 151500 and StopTrading == false Then { Buy("Buy", AtMarket,def, 1); } If Time >= ExitTime Then Begin ExitShort("DayEnd ExitShort"); ExitLong("DayEnd ExitLong"); DateChecked = False; StopTrading = False; End; 전일 마지막봉에 if문을 충족시켜 다음날 시초가 들어올때 신호가 발생하는 타입이므로 마지막봉은 시간으로만 지정이 가능합니다. 그러므로 마지막봉으로 지정한 시간에 끝나지 않으면 신호가 발생하지 않고 해당 부분은 따로 처리가 되지 않습니다. 즐거운 하루되세요 > 착한이 님이 쓴 글입니다. > 제목 : 시가매수 문의 > 수고하십니다. 아래와 같이 옵션만기일을 제외하고 시가매수하여 종가매도하려고 하는데 옵션만기일 근처에 제대로 신호가 안나오는데 수정부탁드립니다. Var : ExitTime(150400),TimeDelay(0); Var : DateChecked(False), StopTrading(False); Var : va1(0), va2(0), va3(0); //옵션만기일 청산 va1= int(date/100)-int(date/10000)*100; va2= date - int(date/100)*100; va3= DayOfWeek(date); If va1%1 == 0 And va2 >= 8 And va2 <= 14 And va3 == 4 Then { StopTrading = True; } If STime == 151500 and !StopTrading Then { Buy("Buy", AtMarket, 1); } If Time >= ExitTime Then Begin ExitShort("DayEnd ExitShort"); ExitLong("DayEnd ExitLong"); DateChecked = False; StopTrading = False; End;
프로필 이미지
착한이
2013-12-09
262
글번호 70269
시스템
답변완료

시스템 수식 문의드려요

안녕하세요. 지금 하려는게.. 예를 들자면 이런겁니다. 유로화 1계약을 지금 매수로 가지고 있다면 1계약을 stop-market 매도내고(a주문) 1계약을 limit 으로 매도 냅니다.(b주문) a, b 주문 둘다 수동으로요. 주문종합화면에서 냅니다. 수식으로 할것은, a주문이든 b주문이든 하나가 체결되면 다른 하나를 취소하는겁니다. oco 주문으로 만드는거죠. a b 주문 자체가 수동으로 내는거다보니 주문명칭을 활용할 수가 없어서 어찌해야할지 모르겠습니다. 그리고 여쭤볼 것이 만약에 제가 유로화 포지션이 없는상태에서 exitlong 주문을 내면 그냥 주문이 실행이 안되는건가요?
프로필 이미지
클루지
2013-12-09
185
글번호 70266
시스템
답변완료

수식문의

[청산조건] if MarketPosition == 1 Then{ if countif(C<O,3) == 3 and C < EntryPrice Then ExitLong(); } if MarketPosition == -1 Then{ if countif(C>O,3) == 3 and C > EntryPrice Then ExitShort(); } 위 수식은 기존수식(아래수식 참고)중의 여러가지 청산조건중에 한가지 청산조건입니다. 청산기준은 해당봉 완성 기준입니다. 1. 위의 청산 조건에서 청산시 반대방향으로 바로 진입이 가능하게 설정하고 싶습니다. (매수로 ExitLong 났을때, 바로 매도진입 / 매도는 반대로) 2. 현재 1계약으로 운용하고 있으며, 이 1계약은 기존의 진입 수식대로 움직이고 1번의 진입 신호 발생시만 여분의 1계약 진입이 가능하도록 수식 부탁드립니다. 따라서, 총 2계약이 운용되게 됩니다. 3. 1번의 경우 ExitLong, ExitShort의 손절이 -1pt 이상 일때만 진입이 가능하도록 수정바랍니다. 따라서, -1pt 미만일때는 진입이 안되기때문에 1계약만 기존 신호대로 운용되게 됩니다. 4. 1번 진입 신호 발생후 손익이 1pt 이상 일때 청산되도록 부탁드리고, 진입신호 발생후 손절이 -1pt 이상 일때 청산되도록 부탁드립니다. [기존수식] input : BBP(20),dv(2); var : BBup(0),BBdn(0); BBup = BollBandUp(BBP,dv); BBdn = BollBandDown(BBp,Dv); if C > O and C <= BBdn Then var1 = 1; if MarketPosition == 0 and var1 == 1 and C > O Then{ Buy("매수"); } if C < O and C >= BBdn Then var1 = -1; if MarketPosition == 0 and var1 == -1 and C < O Then{ sell("매도"); } if MarketPosition == 1 Then{ if countif(C<O,3) == 3 and C < EntryPrice Then ExitLong(); } if MarketPosition == -1 Then{ if countif(C>O,3) == 3 and C > EntryPrice Then ExitShort(); }
프로필 이미지
칼봉산
2013-12-09
181
글번호 70265
지표
답변완료

청산식오류수정

항상감사드립니다 아래 특정진입조건에 대한(B1/B11,S1/S11) 진입청산식이 구현이 되질않습니다 수정부탁드립니다 var : cnt(0),count(0); var1 = ma(c,9); var2 = ma(c,26); if CrossDown(var1,var2) Then value1 = var2; if var2 < value1 Then value1 = var2; #매도라인# if CrossUp(var1,var2) Then value2 = var2; if var2 > value2 Then value2 = var2; #매수라인# value3 = var2; if date != date[1] Then{ value11 = value1[1]; value21 = value2[1]; value31 = value3[1]; } ################################ ##### 삼각가중 이평 ##### ################################ VAR: Length1(20),Length2(60); Variables: TLen1(0),TRIma1(0),TLen2(0),TRIma2(0); TLen1 = Ceiling((Length1 + 1) * 0.5); TLen2 = Ceiling((Length2 + 1) * 0.5); var23 = ma(ma(H, TLen1), TLen1); var22 = ma(ma(C, TLen1), TLen1); var21 = ma(ma(L, TLen1), TLen1); var53 = ma(ma(H, TLen2), TLen2); var52 = ma(ma(C, TLen2), TLen2); var51 = ma(ma(L, TLen2), TLen2); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if (count == 0 and dayopen > value2 and value1==value11) Then buy("B1"); if (stime == 151500 and NextBarOpen > value2) Then buy("B11",AtMarket); if (count == 0 and DayOpen < value1 and value2==value21) Then sell("S1"); if (stime == 151500 and NextBarOpen < value1) Then sell("S11",AtMarket); if count == 1 Then{ if MarketPosition == 1 and MarketPosition != MarketPosition[1] Then Condition3 = false; if MarketPosition == 1 and Condition3 == false and value2 > value1 and value1 == value1[1] Then{ value7 = value1; Condition3 = True; } } if count >= 1 and Condition3 == true Then{ if crossup(c,value7) Then buy("Bb1"); if CrossDown(c,value7) Then sell("Bs1"); } if count == 1 Then{ if MarketPosition == -1 and MarketPosition != MarketPosition[1] Then Condition2 = false; if MarketPosition == -1 and Condition2 == false and value2 >= value1 and value2 == value2[1] Then{ value6 = value2; Condition2 = true; } } if count >= 1 and Condition2 == true Then{ if crossup(c,value6) Then buy("Sb1"); if CrossDown(c,value6) Then sell("Ss1"); } ##### B1/B11,S1/S11 청산 ##### if MarketPosition == 1 and (IsExitName("B1") == true or IsExitName("B11") == true) Then{ if CrossDown(c,var51) then exitlong("eL11"); } if MarketPosition == -1 and (IsExitName("S1") == true or IsExitName("S11") == true) Then{ if crossup(c,var53) then exitshort("eS11"); }
프로필 이미지
조민철
2013-12-09
193
글번호 70264
시스템
답변완료

수직선 긋기

Y축 뒤집기를 하면 수직선이 위에서 아래로 나오는데요 Y축뒤집기가 아닌 정상상태에서 수직선을 위에서아래로 긋는 방법을 알고 싶습니다 감사합니다
프로필 이미지
스로우
2013-12-09
191
글번호 70263
지표
답변완료

수식문의 드립니다

36선이 200선 위에있고 36선을 2틱이상 돌파한 캔들이 되돌림하여 36선에 터치하는 즉시 진입이고 진입즉시 손절7틱 청산은 30틱이익이면 청산합니다 그리고 트레이딩 시간은 17 시부터 01 시까지로 제한하고 싶습니다 또는 뉴욕장에만 거래하거나 유럽장에만 거래하거나 시간을 정해놓고할수있도록 만들고 싶네요.. 항상 감사합니다
프로필 이미지
포승
2013-12-09
214
글번호 70262
시스템