커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

netprofit

아래와 같이 netprofit함수를 이용해서 일요일이후 누적된 pt로 부터 수익금을 계산하여 진입수량을 자동으로 변경코자 합니다. (매주 일요일에 예수금을 수동으로 업데이트) 실전에 적용할 수 있을까요? 실전차트에 시스템을 (시험적용)시켜보니 진입수량이 모두 1로 나와서 문의드립니다. netprofit은 차트상의 신호값이므로, 실제 진입된 수량을 반영할 방법이 없는것인가요? -------------------------------------------------------------------------------- if DayOfWeek(bdate) < dayofweek(bdate[1]) Then { N1 = NetProfit; //지난주까지의 누적손익 } MPL = NetProfit-N1;
프로필 이미지
건곤대
2022-09-06
1612
글번호 162033
시스템
답변완료

시그널 부탁드립니다!!

수고 많으세요 간절하게 도움 부탁 드립니다 일목균형표 매수신호 입니다. 몇 가지 부탁 드립니다. (분봉/일봉/주봉)에 적용 하고 싶습니다. =================================================================== 1) 후행스팬 캔들돌파 신호 (분/일/주)봉 적용하고 싶습니다. *키움 주봉 신호를 (분/일/월)봉 신호 요청합니다. Crossup(C,shift((highest(high,52)+lowest(low,52))/2,26-1))) ==================================================================== 2) 전환선이 기준선돌파 신호 (분/일/주)봉 적용하고 싶습니다. * 키움 주봉 신호를 (분/일/월)봉 신호 요청합니다. Crossup((highest(high,단기)+lowest(low,단기))/2, (highest(high,중기)+lowest(low,중기))/2) ==================================================================== 3) 음운돌파(선행1,2) * 키움 신호 입니다. A=shift((highest(high,longPeriod)+lowest(low,longPeriod))/2,midperiod1);Crossup(C,A) ===================================================================== 4) 월봉시그널(40일선) *키움 신호 입니다. CrossUp(OBV(),(MA(OBV(),10,지수))) ======================================================================== 매도신호 부탁드립니다. 상승시 전환선이 기준선 이탈
프로필 이미지
돈벼락유선
2022-09-06
1537
글번호 162032
강조
답변완료

시스템 부탁드려요

아래수식 테스트에 말씀하신대로 생각한것보다 오류가 있어서 다시 부탁드리겠습니다. 다시 부탁드리겠습니다. 1. 직전 100봉 중 최고가 이후 2. 1 최고가 대비 20% 이상 하락 후 3. 1번 봉의 50봉 안에 최고가 돌파시 매수진입 똑같이 매도진입 이렇게 부탁드립니다. 그리고 if value1 > 0 and Index <= value1+50 and C > Value2 Then Buy(); 위 수식에서 "C > Value2" 이부분이 "var2 = lowest(L,100);"를 뚫고 올라가야되는데 현재는 단순히 Low보다 종가가 큰 인것 같습니다. 이부분도 if C < Var2[1] Then { value1 = Index; Value2 = L; } 이때의 최저점으로 하여야 될 것 같습니다. -------------------------------------------- 안녕하세요 예스스탁입니다 올려주신 내용이면 100개봉 최저가나 최고가를 갱신 후 다음봉에서 종가가 높거나 낮으면 바로 신호가 발생합니다. 100개봉 최저가/최저가 갱신기준이므로 가장최근 발생한 값을 기준으로 합니다. var1 = highest(H,100); var2 = lowest(L,100); if C < Var2[1] Then { value1 = Index; Value2 = L; } if value1 > 0 and Index <= value1+50 and C > Value2 Then Buy(); if MarketPosition == 1 Then { ExitLong("bx1",AtStop,Value2[BarsSinceEntry]); ExitLong("bx2",AtStop,highest(H,BarsSinceEntry)-(highest(H,BarsSinceEntry)-EntryPrice)*0.1); } if C > Var1[1] Then { value3 = Index; Value4 = H; } if value3 > 0 and Index <= value3+50 and C < Value4 Then sell(); if MarketPosition == -1 Then { ExitShort("sx1",AtStop,Value4[BarsSinceEntry]); ExitShort("sx2",AtStop,Lowest(H,BarsSinceEntry)+(EntryPrice-lowest(L,BarsSinceEntry))*0.1); } 즐거운 하루되세요 > 마식 님이 쓴 글입니다. > 제목 : 시스템 부탁드립니다. > 1. 직전 100봉 최저가 2. 1번을 하향돌파하고 50봉 안에 1번을 상향돌파할 시 매수 진입 3. 1번을 손절선으로 설정 4. 직전 100봉 최고가 5. 4번을 상향돌파하고 50봉 안에 4번을 하향돌파할 시 매도 진입 6. 4번을 손절선으로 설정 ----------- 7. 매수 진입 후 수익률 최고가 대비 20% 하락시 매수 청산 8. 매도 진입 후 수익률 최고가 대비 20% 하락시 매도 청산
프로필 이미지
회원
2022-09-06
1096
글번호 162031
시스템
답변완료

스위칭매매와 그래프에서요...

Q1: 예를들어서 5,20 골든크로스에서 buy,5,20,데드크로스에서 sell, 이 두명령어만 한다하면 스위칭 매매가 되는건지 알고싶습니다.매수청산,매도청산명령어 안써도 되는건지요? Q2: 참고 파일 손익그래프에서 스위칭매매로 상방진입했는데 왜 빨간색이익으로 안나오구 파란색 손실로 나오는건지요? 실제 데이터분석통계로 바도 손실로 나오구요...
프로필 이미지
apqk62
2022-09-06
1346
글번호 162028
시스템
답변완료

nextbaropen

nextbaropen을 사용해서 좀더 빠르게 당일 시가가 감지되는 순간 바로 주문이 나가게 하고 싶습니다 아래와 같이 전일의 종가값을 사용한다는 것인데, nextbaropen값이 들어오는 순간, C값이 원하는대로 어제의 종가값을 참조하게 되는것인지요? 혹시 그 전날의 종가값을 가져오게 되는건 아닌지요? ---------------------------------------------------------------- if nextbarstime == 090000 and data2(C) < data2(ma(C,3))
프로필 이미지
건곤대
2022-09-06
1405
글번호 162019
시스템
답변완료

수식 부탁드립니다.

1분봉 차트에서, 일봉기준의 당일을 제외한 최근 n 거래일에서 0. n 거래일 진폭의 평균값을 구하고 싶습니다. 1. 제일 진폭이 큰 1일을 제외한 n-1 거래일 진폭의 평균값을 구하고 싶습니다. 2. 제일 진폭이 큰 2일을 제외한 n-2 거래일 진폭의 평균값을 구하고 싶습니다. 3. 제일 진폭이 큰 1일 과 , 제일 진폭이 작은 1일을 제외한 n-2 거래일 진폭의 평균값을 구하고 싶습니다. 부탁드립니다. 감사합니다.
프로필 이미지
캣피쉬
2022-09-06
1327
글번호 162018
지표
답변완료

수식 좀 부탁드립니다.

차트2를 차트1으로 끌어올려서 시각적으로 확인하는 것 말고 수식으로 차트2의 가격을 차트1에 겹쳐서 나타나게 하고 싶습니다. 게시판을 찾아봐도 안 보여서 질문드립니다.
프로필 이미지
jack112
2022-09-06
1302
글번호 162017
시스템
답변완료

선긋기 부탁드립니다.

안녕하세요? 늘 감사드리면서 선긋기 수식을 요청드립니다. 선물 당일 종가를 기준으로 +1.25 -1.25 +1.5 -1.5 +2.5 -2.5 +3.0 -3.0 +5.0 -5.0 추세선을 당일 15:20분부터 다음날 10:30분까지 선긋기를 원합니다. 추세선은 RGB 숫자로 변경 가능하도록 굵기와 함께 부탁드려봅니다. 도와주심에 다시한번 감사드리며 오늘도 즐거운시간 되시길 바랍니다.
프로필 이미지
포보스
2022-09-06
1451
글번호 162014
지표
답변완료

수식문의드립니다

안녕하세요~ 시스템을 작성하였는데 피라미딩을 할 때 진입 이후 2번째 봉에서 신호 발생시 피라미딩 진입이 이뤄지지 않고 세번째 봉부터는 정상적으로 진입되는데 원인을 못찾겠어 문의드립니다 감사합니다 ---------------------------------------------------------- input : TT1(81000), TD1(20220905), TT2(92500), TD2(20220905), MDD(100000); var : BS1(False), SS1(False), BS2(False), SS2(False), unitP(0); var : HB(0), LB(0), rHB(0), rLB(0), exitC(0), N(0), e60(0); N = ATr(14); unitP = floor(MDD/(2*N*BigPointValue*1400)); exitC = (2-(MaxEntries-1)/2)*N; e60 = Ema(C,40); if sDate >= TD1 && sTime > TT1 Then condition11 = true; if sDate >= TD2 && sTime > TT2 Then condition11 = False; //if condition11 == true Then if (macd(5,20) > 0 && macd(5,40) > 0 && macd(20,40) > 0) && (CrossUp(macd(5,20),0) or CrossUp(macd(5,40),0) or CrossUp(macd(20,40),0)) Then BS1 = true; Else BS1 = False; if (macd(5,20) < 0 && macd(5,40) < 0 && macd(20,40) < 0) && (CrossDown(macd(5,20),0) or CrossDown(macd(5,40),0) or CrossDown(macd(20,40),0)) Then SS1 = true; else SS1 = False; if (BS1 == True or BS2 == TRUE) && marketposition == 0 Then Buy("b1", OnClose, Def, unitP); if MarketPosition[1] == 0 && MarketPosition == -1 Then HB = EntryPrice; if (SS1 == True or SS2 == TRUE) && marketposition == 0 Then Sell("s1", OnClose, Def, unitP); if MarketPosition[1] == 0 && MarketPosition == -1 Then LB = EntryPrice; if marketposition ==1 Then { rHB = Highest(H, BarsSinceEntry+1) ; if rHB < HB+0.5*N Then Buy("b2.",AtStop,HB+0.5*N,unitP); if rHB < HB+N Then Buy("b3.",AtStop,HB+N,unitP); if rHB < HB+1.5*N Then Buy("b4.",AtStop,HB+1.5*N,unitP); if e60 < HB+2*N Then Exitlong("exitB1", atstop, HB-exitC); if e60 >= HB+2*N and CrossDown(close, e60) Then { ExitLong("exitB2") ; } } if marketposition == -1 Then { rLB = Lowest(L, BarsSinceEntry+1); if rLB > LB-0.5*N Then Sell("s2.",AtStop,LB-0.5*N,unitP); if rLB > LB-N Then Sell("s3.",AtStop,LB-N,unitP); if rLB > LB-1.5*N Then Sell("s4.",AtStop,LB-1.5*N,unitP); if e60 > LB-2*N Then ExitShort("exitS1", atstop, LB+exitC); if e60 <= LB-2*N and CrossUp(close, e60) Then { ExitShort("exitS2"); } } if (macd(5,20) > 0 && macd(5,40) > 0 && macd(20,40) > 0) && PositionProfit[1] < 0 Then BS2 = true; Else BS2 = False; if (macd(5,20) < 0 && macd(5,40) < 0 && macd(20,40) < 0) && PositionProfit[1] < 0 Then SS2 = true; Else SS2 = False; MessageLog("Mp %.4f, HB %.4f, ep %.4f", MarketPosition, HB, EntryPrice);
프로필 이미지
jshwang2
2022-09-06
1333
글번호 162013
시스템