커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식작성

input : StartTime(080000),EndTime(035000),진입횟수(5),익절틱수(120),손절틱수(25); var : Tcond(false),entry(0),T(0),S(0); if StartTime < EndTime Then { SetStopEndofday(EndTime); } Else { if sDate != sDate[1] Then SetStopEndofday(EndTime); } if (sdate != sdate[1] and stime >= EndTime) or (sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime) or (sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then { if StartTime > EndTime Then SetStopEndofday(0); Tcond = true; entry = 0; T = 0; } if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if Tcond == true Then { if MarketPosition == 0 and entry < 진입횟수 Then { if T == 0 and C > O Then { T = 1; S = C; } if T == 0 and C < O Then { T = 1; S = C; } if T == 1 Then Buy("b",AtLimit,S-PriceScale*30); if T == -1 Then Sell("s",AtLimit,S+PriceScale*30); } if MarketPosition != 0 Then T = 0; } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop); ---------------- 위 수식어는 72340번의 예스스탁의 수식어 답변입니다. sell 진입신호가 예비 포함 2가지 다 전혀 잡히지 않습니다. 기존 진입시 저점과 숫자갭이 상존해서 수식작성을 잘 못해서 부탁 드린건데 답변 확인하고 저렇게 된다는게 참 놀라웠어요. 추가로 강제청산중 허용범위 100봉 이내 최소가격변화 80틱의 수식어를 포함 하고자 합니다.
프로필 이미지
푸른
2021-05-08
962
글번호 148823
시스템
답변완료

문의드립니다!!

안녕하세요!! 1, 연속된 옵션 4개캔들을 사용한 교차챠트를 만들어서 아래수식을 각각 적용시 총 16개의 선이 다른가격으로 나타나게 되는데요 2, 이때 이 각각의 4개 캔들이 아래수식에서 plot3와 plot4에 해당되는선과 만날때마다 세로선과 음성신호가 발생토록 하는것이 가능할까요? 챠트상으로는 각 캔들별로 맨위선과 맨아래선이며 총 8개선이 해당됩니다 즉, 4개 캔들이 각각 이 8개선과 만나는 자리에서 그때마다 세로선과 음성신호가 발생되었으면 합니다 * 적용된 아래수식의 갯수가 1개가 아니라 각 행사가별로 적용된 별도의 4개수식이라서 캔들이 이 4개수식 각각의 plot3와 plot4를 인식하는것이 관건인것같습니다만.. 3, 만약 가능하다면 세로선의 색상과 두께는 조정이 가능토록 부탁드립니다 매번 도움주심에 항상 감사한 마음입니다!!! ----------------------------------------------------------------------------------- if sTime < 93000 Then { var1 = DayHigh; Var2 = DayLow; Var3 = (var1-Var2); } Plot1(var1); Plot2(var2); Plot3(var1+Var3); Plot4(var2-Var3);
프로필 이미지
유로파54
2021-05-08
1141
글번호 148822
지표
답변완료

지표가 표시가 안돼요 ㅜㅡㅜ

지표에 볼린저밴드 360선이 표시가 안되는데 왜그런가요 ㅜㅡㅜ 그리고 혹시 200일 최고 거래량 터진 종목 검색하는 수식도 만들어 주실수 있나요 항상 감사드려요 ㅜㅡㅜ
프로필 이미지
vhvh
2021-05-08
1143
글번호 148821
지표
답변완료

추가 설명좀 부탁합니다

안녕하세요 게시글 72335 그래서 질문드립니다 아래 식에서 보면 bl bx 차이점을 알고 싶습니다 그리고 고점대비 청산에서 매수1 매도1 에서만 작도 되고요 진입해서 수익권의 고점 대비로 수정좀 부탁합니다 if MarketPosition == 1 Then { ExitLong("bx5",AtLimit,EntryPrice+PriceScale*완전청산,"",5,1); ExitLong("bl1",AtStop,EntryPrice-PriceScale*손절1,"매수1"); ExitLong("bl2",AtStop,EntryPrice-PriceScale*손절2,"매수2"); ExitLong("btr",AtStop,Highest(H,BarsSinceEntry)-PriceScale*고점대비); } Else Lcnt = 0; if MarketPosition == -1 Then { ExitShort("sx5",AtLimit,EntryPrice-PriceScale*완전청산,"",5,1); ExitShort("sl1",AtStop,EntryPrice+PriceScale*손절1,"매도1"); ExitShort("sl2",AtStop,EntryPrice+PriceScale*손절2,"매도2"); ExitShort("str",AtStop,lowest(L,BarsSinceEntry)+PriceScale*고점대비); } Else Hcnt = 0;
프로필 이미지
kjdkdh
2021-05-07
1557
글번호 148820
시스템
답변완료

시스템 이상 검토의뢰

수고 하십니다 ! input : P1(1),P2(1920); var : mav1(0),mav2(0); mav1 = ma(C,P1); mav2 = ma(C,P2); if mav1 < mav2 -PriceScale*80 Then Buy("이평수"); sell("bs",AtStop,EntryPrice-PriceScale*12); if mav1 > mav2 +PriceScale*80 Then Sell("이평도"); Buy("sb",AtStop,EntryPrice+PriceScale*12); 처음 매수를 해서 반대쪽으로 12 틱 이 되면 손절 을 하고 매도 를 체결하고 나면 12 틱이 또 반대로 되기전 까지는 매매가 체결되면 안되는 데 체결되자 마자 또 반대쪽 매매가 체결 되니까요 처음 매매 에서 반대쪽 매매가 체결되면 12 틱 이 반대로 진행되거나 익절 청산 이 될때까지는 다른 수식 이 적용 안되게 수식을 꼭 부탁 드립니다 # 거래내역 표시에 stop 으로 표시안되고 exit long,shot 으로 표시 되면서 수식 대로 실행 이 안되고 1틱이나 같은 가격에 청산되고 체결되고 하네요 ***** 수고 하세요 *****
프로필 이미지
tnsflwls
2021-05-10
1434
글번호 148819
시스템
답변완료

추가부탁드립니다(72234질문)

감사히 잘 보았습니다. 그런데 매봉 생성될때마다 수량이 표시가 되어서 봉 보는데 조금 불편합니다. 제가 원하는것은 3시 45분체결량이 3시 35분 가격과 비교해서 종가봉위에 그 체결량을 표시하고 싶습니다.(매수세가 강했나 매도세가 강했나를 알고싶은겁니다). 만일 당일마지막봉이 완성이 안되어서 당일것은 익일 시초에 표시되도 괜찮습니다. 즉 익일 매봉 생성될때마다 표시할필요는없고 하루에 한번만 종가위에 표시하고 싶습니다. ex) ▲1234 , ▼2345 ...이렇게 차트마지막봉위에 한번만 그려지게하고 싶습니다. 색깔과 텍스트크기도 임의로 바꿀수있게 해주시면 감사하겠습니다
프로필 이미지
3579
2021-05-07
1458
글번호 148818
지표
답변완료

지표를 이용한 매수매도를 하고 싶은데요

예스트레이더코인을 깔아서 코인 자동매매를 해보려 하는데요 너무 깜깜이라 도움을 요청드려봅니다 저는 cci 와 스토캐스틱 슬로우 지표 신호두개를 동시에 사용하고 싶은데요 두개의 지표가 동시에 과매도 지점에 들어섰을시 매수 두개의 지표가 동시에 과열 지점에서 매도하고 싶습니다 또 거래가 손실이던 이익이던 한번 종료된후 세시간정도의 인터벌 휴식시간후 다시 동작이 되었으면 합니다 도움을 주시면 감사하겠습니다
프로필 이미지
babopapa
2021-05-07
1399
글번호 148817
지표
답변완료

수식작성

input : StartTime(220000),EndTime(035000),진입횟수(5),익절틱수(40),손절틱수(25); var : Tcond(false),entry(0); if StartTime < EndTime Then { SetStopEndofday(EndTime); } Else { if sDate != sDate[1] Then SetStopEndofday(EndTime); } if (sdate != sdate[1] and stime >= EndTime) or (sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then Tcond = False; if (sdate != sdate[1] and stime >= StartTime) or (sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then { if StartTime > EndTime Then SetStopEndofday(0); Tcond = true; entry = 0; } if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if Tcond == true Then { if MarketPosition == 0 and C > O and entry < 진입횟수 Then { Buy("b"); } if MarketPosition == 0 and C < O and entry < 진입횟수 Then { Sell("s"); } } SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop); ---------------------- 진입신호후 buy , sell 둘 다 -30틱에 주문이 되는 수식어를 포함 하고자 합니다. 미리 감사 드립니다.
프로필 이미지
푸른
2021-05-07
1206
글번호 148798
시스템
답변완료

시스템 이상 검토의뢰

수고 하십니다 ! Input : Period1(1), Period2(5), Period3(30), Period4(60), Period5(120),period6(240), Period7(480), Period8(960),period9(1920); var : sma1(0),sma2(0),sma3(0),sma4(0),sma5(0),sma6(0),sma7(0),sma8(0),sma9(0); sma1 = ma(C,period1); sma2 = ma(C,period2); sma3 = ma(C,period3); sma4 = ma(C,period4); sma5 = ma(C,period5); sma6 = ma(C,period6); sma7 = ma(C,period7); sma8 = ma(C,period8); sma9 = ma(C,period9); var : t(0),s(0); if MarketPosition <= 1 and sma1 < sma2 and sma2 < sma3 and sma3 < sma4 and sma4 < sma5 and sma5 < sma6 and sma6 < sma7 and sma7 < sma8 and sma8 < sma9 Then { t = -1; s = c; } if MarketPosition >= -1 and sma1 > sma2 and sma2 > sma3 and sma3 > sma4 and sma4 > sma5 and sma5 > sma6 and sma6 > sma7 and sma7 > sma8 and sma8 > sma9 Then { t = 1; s = c; } if t == -1 Then Buy ("b"); if t == 1 Then Sell("s"); if MarketPosition == 1 Then { sell("bs",AtStop,EntryPrice-PriceScale*10); if Highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*15 Then ExitLong("bx",AtStop,Highest(H,BarsSinceEntry)-PriceScale*10); } if MarketPosition == -1 Then { Buy("sb",AtStop,EntryPrice+PriceScale*10); if lowest(L,BarsSinceEntry) <= EntryPrice-PriceScale*15 Then ExitShort("sx",AtStop,lowest(L,BarsSinceEntry)+PriceScale*10); } 위 수식 대로라면 0,1 같은 청산 이 나오면 안되는데 자꾸 나오네요 원인 이 무엇인가 검토하고 수정 좀 꼭 부탁 드립니다 ***** 수고 하세요 *****
프로필 이미지
tnsflwls
2021-05-07
1296
글번호 148793
시스템