커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

검색식 부탁 드립니다.

수고 많으십니다! 1봉전~5봉전 까지 상한가 나온종목 중에서 5일 이평선을 이탈 하는 종목을 검색 하고 싶습니다. 검색식 부탁 드립니다. 꾸~~벅!
프로필 이미지
소어드
2021-04-15
921
글번호 148053
검색
답변완료

부탁드립니다

#,안녕하세요. 국선에서 전일의 변동폭을 당일에 시가기준으로 스윙하이로우로 출력부탁드립니다. "언제나 많은 도움에 항상 감사드립니"
프로필 이미지
크라켄
2021-04-15
897
글번호 148052
지표
답변완료

문의

음봉의 거래량이 앞봉의 거래량보다 많어면 그음봉의 캔들위에 검은점이 나오게 부탁드립니다.
프로필 이미지
레전드
2021-04-15
858
글번호 148049
지표
답변완료

문의 드립니다

안녕하세요 아래 사항에 대해 두가지 문의 드립니다 1 아래 문법이 적용되는지 2 지표 작성후 f4늘 눌러 문법검증하고 f5를 누르면 지표속성창이 나타난다고 하는데 어떻게 f5를 누르면 지표속성창이 나타나는지 부탁 드립니다 감사합니다. Inputs: FastMovAvg1(12), SlowMovAvg1(26), MACDMovAvg1(9); Var : MACDV1(0,data1) , MACDS1(0,data1); MACDV1 = (ema((c),FastMovAvg1))-(ema(((c)),SlowMovAvg1)); MACDS1 = (ema(MACDv1,MACDMovAvg1)); var1 = MACDV1; var2 = MACDS1; if (var1 > var2) Then var3 = 1; if (var1 < var2) Then var3 = -1; if var3 == 1 then { plot1(9999999999,"라인1"); plot2(0,"라인"); } if var3 == -1 Then { plot1(0,"라인1"); plot2(9999999999,"라인");
프로필 이미지
dkfvkrh7
2021-04-15
1004
글번호 148041
지표
답변완료

수식어 부탁드립니다

var : entry(0); input : StartTime(070000),EndTime(055000),xtime(055500); var : 전환선(0),기준선(0),선행스팬1(0),선행스팬2(0); var : Tcond(false); if sDate != sDate[1] then SetStopEndofday(xtime); 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 { Tcond = true; SetStopEndofday(0); } if bdate != bdate[1] Then entry = 0; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; if MarketPosition <= 0 and entry < 1 Then buy("b",atlimit,dayhigh-PriceScale*120); if MarketPosition == 1 Then exitlong("bx",atlimit,lowest(L,BarsSinceEntry)+PriceScale*60); if MarketPosition >= 0 and entry < 1 Then sell("s",atlimit,daylow+PriceScale*3500); if MarketPosition == -1 Then ExitShort("sx",atlimit,Highest(H,BarsSinceEntry)-PriceScale*120); if sdate != sdate[1] Then SetStopEndofday(55000); if bdate != bdate[1] Then SetStopEndofday(0); --------------------------- 기존의 하늘색 buy(-120) 청산( +60)에서 청산싯점인 (+60)은 최저점에서 (+60)으로 신호가 나옵니다 . 노란색 buy(=120)이후 바로 (+60) 청산이 되는 buy, sell수식어로 부탁드립니다.
프로필 이미지
푸른
2021-04-15
994
글번호 148040
시스템
답변완료

수식 수정 요청부탁드립니다.

안녕하세요. 어제 작성해주신 수식으로 시뮬레이션을 해봤는데 약간 제 생각과 다르게 되는것 같아서 수정 좀 부탁드립니다. 제가 원하는 것은 0.77260에 1계약 매수 들어가면 피라미딩식으로 0.77270에 매수가 되고, 또 0.77280에 매수가 되고 그 다음에 흐름이 바뀌어 0.77270이 되었을 때는 직전에 매수했던 1계약이 매수 청산 된 후에 다시 0.77280이 되면 다시 매수가 진행되는 시스템을 원하거든요. 근데 아래 식으로는 거래내역을 보니 좀 다르게 진행이 되는것 같더라구요. 요약하자면 추세를 따라가면서 1계약씩 늘려가다가 되돌림이 되면 1계약씩 줄여나가고, 최초 매수했던 수량까지 다 손절이 되면, 그 다음부터는 매도로 신규진입되면서 1계약씩 피라미딩 진행되는것을 원합니다. 장대양봉이나, 장대음봉이 나왔을 경우 수익을 극대화하고자 하는 방법을 원하거든요. 보시고, 수정 좀 부탁드립니다. =============================================================== input : 최초진입(1); var : LP(0); if sDate != sDate[1] Then SetStopEndofday(55500); if Bdate != Bdate[1] Then { SetStopEndofday(0); LP = 0; if 최초진입 == 1 Then Buy("b1",AtMarket,DEF,1); if 최초진입 == -1 Then Sell("s1",AtMarket,DEF,1); } Else { if MarketPosition == 1 Then { if CurrentContracts > CurrentContracts[1] Then LP = LatestEntryPrice(0); if CurrentContracts < CurrentContracts[1] Then LP = LatestExitPrice(0); Buy("bb",AtStop,LP+0.001,1); ExitLong("bx",AtStop,LP-0.001,"",1,1); } if MarketPosition == -1 Then { if CurrentContracts > CurrentContracts[1] Then LP = LatestEntryPrice(0); if CurrentContracts < CurrentContracts[1] Then LP = LatestExitPrice(0); Sell("ss",AtStop,LP-0.001,1); ExitShort("sx",AtStop,LP+0.001,"",1,1); } if MarketPosition == 0 and LP > 0 Then { Buy("b",AtStop,ExitPrice(1)+0.001,1); Sell("s",AtStop,ExitPrice(1)-0.001,1); } } 즐거운 하루되세요 > 바다가좋아 님이 쓴 글입니다. > 제목 : 수식 추가 수정 요청부탁드립니다. > 안녕하세요. 어제 전량 청산 조건으로 수식 작성 부탁드렸는데 하나씩 청산하는 전략으로도 시뮬레이션을 해보고 싶어서요. < 요청 사항 > 1. 피라미딩으로 수량 증가하면서 늘려가다가 그 반대방향으로 진행시에는 그 방향으로 하나씩 청산(손절) 되면서, 다 청산 되면 신규 매수 or 매도 진입이 되는 방식으로 만들었으면 합니다. 흐름을 따라가면서 계약수를 하나씩 증가시키거나, 감소시키고자 합니다. 2. 매매종목 : 해외선물(Australian Dollar) (5분봉 기준) 3. 매매 예시 1) 최초 시장가 1계약 매수 or 매도 2) 매수 or 매도와 동시에 손절(+- 0.001pt)만 설정 3) 최초 매수 or 매도한 가격 기준으로 수익 진행시 +0.001포인트마다 1계약씩 추가 매수 or 매도 ex) AUD 기준 0.76545 1계약 매수 -> 0.76645 추가 1계약 매수 -> 0.76745 추가 1계약 매수 -> 0.76845 추가 1계약 매수 -> 이후 가격이 0.76745로 되돌림 되었을 때는 먼저 0.76845에서 매수했던 1계약만 매수 청산(손절) -> 0.76745 에서 1계약 매수청산(손절) -> 0.76645 1계약 매수 청산(손절) -> 0.76545 1계약 매수청산(손절) -> 이후 가격이 0.76445까지 내려가면 0.76445 1계약 매도 진입 -> 0.76345 1계약 매도 -> 0.76245 추가 1계약 매도 -> (반복) 4) 각 추가매수 or 추가매도한 계약별로 진입할 때마다 손절(-0.001포인트) 설정 5) 청산은 장 종료시에 시장가로 일괄 청산 설정(익일 05:55분) 6) 아~ 그리고 처음에 매수로 진행하지 않고, 시장 상태에 따라 제가 매수 or 매도를 한 후에 위의 방법대로 설정되어 시스템이 움직일 수 있도록 만들었으면 합니다. 항상 감사드립니다. 그럼 수고하세요.
프로필 이미지
바다가좋아
2021-04-15
941
글번호 148039
시스템
답변완료

늘 감사합니다

5계약 진입 1 . 이평선 5 10 20 30 40 2 . 주가가 이평선 30 40 돌파 이탈 한 마지막 자리 고점 저점 기억 매번기억하고 이전 기억값은 삭재 3 . 이평선 20 선 과 주가 (현재가격) 이격도 관계 hts 처음 접속하고 시스템 적용하면 직전 2번 조건 기억하기 (2번 조건을 기억할수 없다면 변수에 손으로 적어준다 ) 손절1 20틱 5계약 손절2 5 이평선이 20 이평선 이탈시 5계약 (매도금지) 현 조건에서 5 이평선이 20 이평선을 돌파하면 -- 추가 매수3 청산3 20 이평선과 주가 이격이 100 이상이면 1계약 청산4 20 이평선과 주가 이격이 90 이상나왔고 10 이평선이 양에서 음으로 변하면 1계약 현 포지션에서 청산 3 4 나올때 마다 차트에 표시 예)- 한번 청산 나오면 "청산1" 두번째 청산 나오면 "청산2" 세번재 청산 나오면 "청산3"매수 -- 5 이평선이 30 40 이평선을 돌파하면 -- 매수1 매수1 진입해서 손절이 나오면 마지막 (기억한 가격) 가격을 돌파하면(즉 매수1 에 고정) -- 매수2 네번째 청산 나오면 "청산4" 다섯번째 청산 나오면 "완청" 이런 형식으로요 Condition11 = true; T3 = Text_New(sdate,stime,H," 청산1"); Text_SetColor(T3, 255); Text_SetStyle(T3,2,1); 매도 -- 5 이평선이 30 40 이평선을 이탈하면 -- 매도1 매도1 진입해서 손절이 나오면 마지막 (기억한 가격) 가격을 돌파하면(즉 매도1 에 저정) -- 매도2 손절1 20틱 손절2 5 이평선이 20 이평선 돌파시 5계약 (매수금지) 현 조건에서 5 이평선이 20 이평선을 이탈하면 -- 추가 매도3 청산3 20 이평선과 주가 이격이 100 이상이면 1계약 청산4 20 이평선과 주가 이격이 90 이상나왔고 10 이평선이 음에서 양으로 변하면 1계약 현 포지션에서 청산 3 4 나올때 마다 차트에 표시 예)- 한번 청산 나오면 "청산1" 두번째 청산 나오면 "청산2" 세번재 청산 나오면 "청산3" 네번째 청산 나오면 "청산4" 다섯번째 청산 나오면 "완청" 이런 형식으로요 Condition11 = true; T3 = Text_New(sdate,stime,H," 청산1"); Text_SetColor(T3, 255); Text_SetStyle(T3,2,1);
프로필 이미지
kjdkdh
2021-04-15
1068
글번호 148038
시스템
답변완료

[재문의]어제 문의한 수식이 잘 작동하지 않아요

안녕하세요 자꾸 수정해서 죄송합니다 아래 숫자가 표현되는 위치만 수정해주신다면 정말 감사드리겠습니다 1.LL과 HH지점에 숫자가 표현되어야 하는데 조건식 완성봉에서 숫자나옵니다 (예를 들어 'L[4]>L[3] and L[3] >L[2] and H>H[1] and H[1]>H[2]' 조건이 완성되는 봉에 '+1'이 나옵니다. 제 의도는 L[2]에 숫자가 표현되는 것입니다) 노고에 감사합니다 ------ #변경된수식 var : LL(0),HH(0),tx1(0),tx2(0); if var2 == 0 and (LL == 0 or (LL > 0 and L > LL)) and L[4]>L[3] and L[3] >L[2] and H>H[1] and H[1]>H[2] Then { var1 = var1+1; LL = L[2]; tx1 = Text_New(sDate,sTime,H,"+"+NumToStr(var1,0)); Text_SetStyle(tx1,2,1); PlotPaintBar(H,L,"강조",black); } else { if L < LL Then { var1 = 0; ll = 0; } } if var1 == 0 and (HH == 0 or (HH > 0 and H < HH)) and H[4]<H[3] and H[3]<H[2] and L<L[1] and L[1]<L[2] Then { var2 = var2+1; HH = H[2]; tx2 = Text_New(sDate,sTime,L,"-"+NumToStr(var2,0)); Text_SetStyle(tx2,2,0); PlotPaintBar(H,L,"강조",gray); } Else { if H > HH Then { var2 = 0; hh=0; } }
프로필 이미지
산이보리
2021-04-15
1036
글번호 148037
강조
답변완료

시스템 의뢰

수고 하십니다 ! 현재가 에서 7틱 이상 하락 하고 1 이평선 이 5 이평선 을 크로즈업 할때 2틱 아래로 매수 하고 , 현재가 에서 7틱 이상 상승 하고 1 이평선 이 5 이평선 을 크로즈다운 할때 2틱 위로 매도 하는 시스템 을 부탁 드립니다. ***** 수고 하세요 *****
프로필 이미지
tnsflwls
2021-04-15
963
글번호 148036
시스템