커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식검토 부탁드립니다.

안녕하세요. 운영자님. 무더운 여름 고생이 많으시네요. 제가 부탁드릴 사항은 1. 스스템의 거래시간이 제대로 적용되지 않는 문제점을 바로잡아 주셨으면 합니다. 2. 진입 수량은 첫진입은 1계약, 실패 시 두번째 진입은 2계약, 또 실패 시 3번째 진입 시 4 계약으로 이런 식으로 누적 진입하다가 성공 시 다시 1계약부터 진입될 수 있도록 부탁드 립니다. input : 거래시간(1),시작시간(160000),끝시간(045500),익절틱수(30),손절틱수(30); INPUT : LENGTH(17),upn(2),dnn(2); VAR : TCHAN1(0), BCHAN1(0),MID(0),TOP2(0),BOT1(0); var : T(0),S(0),HH(0),LL(0); if 거래시간 == 1 then condition3 = (stime>=시작시간 or stime<=끝시간); Else if 거래시간 == 2 then condition3 = (stime>=시작시간 and stime<=끝시간); Else condition3 = true; TCHAN1 = HIGHEST(HIGH+PriceScale*2, LENGTH)[0]; BCHAN1 = LOWEST(LOW-PriceScale*2, LENGTH)[0]; Mid = (TCHAN1+BCHAN1)/2; TOP2 = TCHAN1-PriceScale*6; BOT1 = BCHAN1+PriceScale*6; if CrossUp(C,MID) Then { T = 1; S = 0; } if CrossDown(C,MID) Then { T = -1; S = 0; } if T == 1 Then { if CrossUp(C,TOP2) Then { S = S+1; if S == upn Then Buy(); } } if T == -1 Then { if CrossDown(C,BOT1) Then { S = S+1; if S == dnn Then Sell(); } } if MarketPosition == 1 Then{ LL = Floor((highest(H,BarsSinceEntry) - EntryPrice)/(PriceScale*손절틱수 )); ExitLong("bx",AtStop,(EntryPrice-(PriceScale*손절틱수 ))+(PriceScale*손절틱수 )*LL); } if MarketPosition == -1 Then{ HH = Floor((EntryPrice-Lowest(L,BarsSinceEntry))/(PriceScale*손절틱수 )); ExitShort("sx",AtStop,(EntryPrice+(PriceScale*손절틱수))-(PriceScale*손절틱수 )*HH); } SetStopProfittarget(PriceScale*익절틱수,PointStop); if stime == 끝시간 or (stime > 끝시간 and stime[1] < 끝시간 ) Then{ if MarketPosition == 1 Then ExitLong(); if MarketPosition == -1 Then ExitShort(); }
프로필 이미지
고박사122
2021-07-17
1304
글번호 150835
시스템
답변완료

수식부탁드립니다

#,아래수식에서 아래조건을 추가부탁드립니다. input : Period(14); var : ADXv(0),DP(0),DM(0); ADXv = ADX(Period); DP = DiPlus(Period); DM = DiMinus(Period); plot1(ADXv,"ADX"); plot2(DP,"+DI"); plot3(DM,"-DI"); 1 -,DP < DM 이고 ADX가 30이상일때 DM이 ADX를 데드크로스할때 캔들아래에 "★"(Red)표시한다 DP < DM 이고 ADX가 50이상일때 최고점에서 차트캔들아래에 "★"(Red)표시한다 -,DP > DM 이고 ADX가 30이상일때 DP가 ADX를 데드크로스할때 캔들위에 "★"(Blue)표시한다. DP > DM 이고 ADX가 50이상일때 최고점에서 차트캔들위에 "★"(blue)표시한다 2, -,DP < DM 이고 ADX가 30이상일때 DM이 ADX를 데드크로스할때 차트에 데드크로스시점에 발생된 봉이 음봉 이면 시가를 우측수평선 그리기하고 발생된 봉이 양봉이면 시가와 종가 2개의선을 우측그리기한다. -,DP > DM 이고 ADX가 30이상일때 DP가 ADX를 데드크로스할때 차트에 데드크로스시점에 발생된 봉이 음봉 이면 시가를 우측수평선 그리기하고 발생된 봉이 양봉이면 시가와 종가 2개의선을 우측그리기한다. 1,2번의 수식을 별도식으로 작성부탁드립니다.(2번식수평선을 가능하면 PLot출력하면 좋겠 습니다) $,도움주심에 감사합니다
프로필 이미지
크라켄
2021-07-18
1556
글번호 150834
지표

요타 님에 의해서 삭제되었습니다.

프로필 이미지
요타
2021-07-17
14
글번호 150833
지표
답변완료

문의 드립니다

안녕하세요 시스템 수식을 한개의 화일에 순서대로(1번식 만족 못하면 2번식 적용 ----- ) 진행하는 진입 청산식을 만들고 있으나 어느 순간부터 아래와 같이 에러 메세지가 발생하고 시스템식을 적용하지 못하고 있습니다 시스템 오류:no such file or directory 현재의 화일크기는 608kb 이며 지금까지 작업한 화일 세로줄은 13,600줄 까지 만들었습니다 한개의 화일에 매수진입 매수청산, 매도진입 매도청산이 함께 있습니다 적용수식(예)은 아래와 같습니다 if MarketPosition <= 0 Then { if 조건수식1 Then { #처리1 if CurrentContracts < 1 Then buy("매수1",OnClose,def,1); } Else if 조건수식2 Then { #처리2 if CurrentContracts < 1 Then buy("매수2",OnClose,def,1); } Else if 조건수식3 Then { #처리3 if CurrentContracts < 1 Then buy("매수3",OnClose,def,1); } Else if 조건수식4 Then { #처리4 if CurrentContracts < 1 Then buy("매수4",OnClose,def,1); } Else if 조건수식5 Then { #처리5 if CurrentContracts < 1 Then buy("매수5",OnClose,def,1); } Else { #처리6 if 조건수식6 and CurrentContracts < 1 Then buy("매수6",OnClose,def,1); } }
프로필 이미지
남산
2021-07-17
1487
글번호 150832
시스템

남산 님에 의해서 삭제되었습니다.

프로필 이미지
남산
2021-07-17
0
글번호 150831
시스템

베어샘 님에 의해서 삭제되었습니다.

프로필 이미지
베어샘
2021-07-17
16
글번호 150830
종목검색
답변완료

문의드립니다

1,과거 주봉중에서 가장 거래량이 가장 많은 주봉을 찾아서 고가와 저가에 선을긋고 싶습니다 2,직전봉은 수식으로 어케나타냅니까?
프로필 이미지
처음처럼22
2021-07-19
1348
글번호 150829
지표
답변완료

수식 문의드립니다.

if MarketPosition == 0 and Condition1 == true and Condition1[1] == False Then Buy(); if MarketPosition == 0 and Condition2 == true and Condition2[1] == False Then Sell(); 위에 며칠전 작성해주신 수식에서 Condition1[1] == False 의 의미가 혹시 기존에 매수포지션이 없을때만 매수신호 발생시킨다는 의미인가요? 제가 원하는건 동일포지션의 중복진입은 허용하고 반대포지션의 진입은 허용하지 않을 생각입니다. 그렇다면 시스템트레이딩 설정에서 피라미딩 모든 진입신호 허용으로 하고, 아래처럼 수식을 바꾸면 제가 원하는대로 동일포지션 중복진입은 허용하고 반대포지션 진입은 허용안하는 결과를 얻을수 있을까요? if MarketPosition == 0 and Condition1 == true and Condition2[1] == False Then Buy(); if MarketPosition == 0 and Condition2 == true and Condition1[1] == False Then Sell();
프로필 이미지
대박성투77
2021-07-17
1462
글번호 150828
시스템
답변완료

트레일링스탑 추가요청...

input : position1(1),ntime1(100000),vol1(1); input : position2(1),ntime2(110000),vol2(1); input : xtime(55800); var : ST(0); if Bdate != Bdate[1] Then { ST = sTime; } if ST > 0 then { if (sdate != sdate[1] and stime >= ntime1) or (sdate == sdate[1] and stime >= ntime1 and stime[1] < ntime1) Then { if position1 == 1 Then Buy("매수-1",OnClose,DEf,vol1); if position1 == -1 Then Sell("매도-1",OnClose,DEf,vol1); } if (sdate != sdate[1] and stime >= ntime2) or (sdate == sdate[1] and stime >= ntime2 and stime[1] < ntime2) Then { if position2 == 1 Then Buy("매수-2",OnClose,DEf,vol2); if position2 == -1 Then Sell("매도-2",OnClose,DEf,vol2); } } IF Xtime > ST Then SetStopEndofday(Xtime); Else { if sDate != sDate[1] Then SetStopEndofday(Xtime); } if (sdate != sdate[1] and stime >= ST) or (sdate == sdate[1] and stime >= ST and stime[1] < ST) Then { IF Xtime <= ST Then { SetStopEndofday(0); } } 위 식에서 트레일링 스탑을 추가하고 싶습니다. 변수로 지정 가능하게 해주세요~ ^^ 만약 안된다면 목표가 도달시 -20틱 으로 부탁드립니다.~~ 매번 감사하드립니다.
프로필 이미지
스카스카
2021-07-16
1693
글번호 150827
시스템