커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

청산식오류수정

항상감사드립니다 아래 특정진입조건에 대한(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
157
글번호 70264
시스템
답변완료

수직선 긋기

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

수식문의 드립니다

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

문의드립니다

선물지수행사가에 현재가를 %로 텍스트출력하길원합니다 예를 들어 현재가가 262.50을 돌파후 265까지 몇%남았는지 262.50에서는 몇%돌파했는지 알고 싶습니다
프로필 이미지
처음처럼22
2013-12-09
154
글번호 70261
지표
답변완료

지표의 출력 중단

항상 신속하고 상세하게 답변 주셔서 많은 도움을 받고 있습니다. 감사합니다. 첨부한 이미지와 같이 지표의 우측일부가 출력이 안되는 경우가 있는데요. 시간이 지나면 다시 니타납니다만, 새로고침 같은 버튼이나 간단없이 출력되게할 방안이 있는지요? 다른 차트는 그렇지않은데 이 차트만 나타나는 현상입니다.
프로필 이미지
스퍼트시커
2013-12-09
164
글번호 70260
지표
답변완료

근접 행사가 구하기

항상 상세하고 신속하게 답변 주셔서 많은 도움을 받고 있습니다. 감사합니다. 전략차트 하나에 콜1개 풋5개가 포함되어 있을 때 콜과 가장 근접한 풋의 가격을 찾고자 합니다. 콜1 = 5 풋1 = 3.2 풋2 = 4.0 풋3 = 5.5 풋4 = 7.8 풋5 = 8.5 라고 할때 =min(abs(콜1-풋1), abs(콜1-풋2), abs(콜1-풋3), abs(콜1-풋4), abs(콜1-풋5)) 위와 같이 하면 0.5가 리턴되는데요. 풋3의 값 5.5를 리턴 받고자 하는데 어떻게해야 할까요? 사실 콜의 숫자가 5개로 확장된 모델에 적용할 예정입니다. 혹시 for 문 등으로 간소화 할 방법이 있으면 가르쳐 주시길 부탁드립니다.
프로필 이미지
스퍼트시커
2013-12-09
168
글번호 70256
지표
답변완료

시스템식 부탁드립니다.

1분봉 매매입니다. 1차 매수 백만원 2차 매수 백만원 3차 매수 2백만원 전일의 종가대비 7% 이상 상승했을 경우 부터 아래의 변동폭을 구한후에 매수를 함 변동폭 = 당일고가-Min(당일저가, 전일종가) 1차 매수 = 당일고가 - 변동폭*0.382 2차 매수 = 당일고가 - 변동폭*0.5 3차 매수 = 당일고가 - 변동폭*0.618 수익실현 = 1,2차 매수시에는 1.5% 수익실현 3차 매수시에는 0.4% 수익실현 * 1차 매수가 되어야만 2,3차 매수가 가능하며 1차 매수시에는 분봉의 이전 종가가 1차 매수 가격보다 위에 있었어야 함 * 1차 매수는 14:30분 이전까지만 매수 가능 * 2,3차 매수는 14:40분 이전까지만 매수 가능 * 수익실현 이후에 5분이내에는 재매수금지 * 14:49분 전량 청산
프로필 이미지
엠제이
2013-12-09
145
글번호 70251
시스템
답변완료

옵션매매

안녕하세요. 아래와 같은 선물전략을 옵션전략으로 변환부탁드립니다. (ex. Close -> Data2(C) ) 아룰러 기준선물차트가 50틱차트라면 옵션도 동일하게 50틱으로 설정하는 것이 좋나요? 선물신호가 나옴과 동시에 옵션에 신호를 발생시키려면 어떤식으로 설정해야 하나요? 그럼 수고하세요. Input : EntryTime1(90700), EntryTime2(90400); Var : cnt(0), EntryCount(0), DayGap(0), Signal(""); Var : atrlen(30), ts(3); DayGap = ABS(DayOpen - DayClose(1)); EntryCount = 0; For cnt = 0 to 20 { If Sdate == EntryDate(cnt) Then EntryCount = EntryCount + 1; } If Time < EntryTime1 and EntryCount < 1 Then { If CrossUp(C, MA(C, 10)) Then Buy("Buy", AtMarket); If CrossDown(C, MA(C, 10)) Then Sell("Sell", AtMarket); } If Time >= 94000 Then { If MarketPosition == -1 and EntryCount == 1 Then { If PositionProfit < -0.5 Then { Buy("손절매수", AtMarket); } } } If Time >= 90200 Then { If MarketPosition == 1 and EntryCount == 1 Then { If EntryPrice - lowest(low,barsSinceEntry+1) > 0.8 Then { Buy("피라미딩매수",Atstop,lowest(low,barsSinceEntry+1)+atr(30)*3); } } } SetStopLoss(1.0, PointStop); SetstopProfittarget(2.0, Pointstop); If Marketposition == 1 then { If highest(high,barsSinceEntry+1) - EntryPrice > ProfitLimit Then exitlong("매수청산",Atstop,highest(high,barsSinceEntry+1)-atr(atrlen)*ts); } If Marketposition ==-1 then { If EntryPrice - lowest(low,barsSinceEntry+1) > ProfitLimit Then exitshort("매도청산",Atstop,lowest(low,barsSinceEntry+1)+atr(atrlen)*ts); } If Time >= 131000+TimeDelay Then Begin ExitShort("DayEnd ExitShort"); ExitLong("DayEnd ExitLong"); End;
프로필 이미지
회원
2013-12-09
181
글번호 70249
시스템
답변완료

지표식 검토 부탁드립니다.

안녕하세요? 아래의 지표식을 예전에 노트하여 출처가 기억나지 않아 문의 드립니다. 본 지표식을 적용하면 지표라인 4개 중에 2개만 표시되는데 공부가 부족하여 어떤 문제 때문인지 알 수 없는데 주석과 함께 알려주시면 감사하겠습니다. Input: N(70), StartPrB(0.06), StartPrS(0.06); Vars: Ind(0), Plotgreen(0), Plotred(0), BuyZone1(0), SellZone1(0), CZone(0); Ind = Average(PercentR(9),3); Plotgreen = Mod(Index,2); Plotred = Mod(Index,2); BuyZone1=DZBuy(Ind, StartPrB, N); SellZone1=DZSell(Ind, StartPrS, N); CZone=DZBuy(Ind, 90, N); Plot1(Ind,"Indicator"); If Plotgreen = 0 then Plot2(BuyZone1,"Normal"); If Plotgreen = 1 then Plot3(SellZone1,"Normal"); Plot4(CZone,"Center");
프로필 이미지
예시스
2013-12-09
181
글번호 70246
지표