커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

추적매매와 별도목포가격

# 추적청산 input : AtrMult(12), AtrPeriod(14); var : AtrVal(0), posHigh(0), posLow(0); # ATR 추적청산 ATRVal = ATR(AtrPeriod) * AtrMult; PosHigh = Highest(H,BarssinceEntry+1); PosLow = Lowest(L,BarsSinceEntry+1); If MarketPosition == 1 Then sell("ATR1", AtStop, PosHigh - ATRVal); If MarketPosition == -1 Then buy("ATR2", AtStop, PosLow + ATRVal); 위수식후 최대수익대비하락이익실하면 다음추적신호안됨니다 나올수있게 수식부탁합니다. 예. 6p이후3p 하락하면 이익실현하고 다음추적신호가나오게 부탁합니다. 목포가수식을부탁합니다 추적에영향이받지않게 추적과별도 수식을부탁합니다 예 6p이후3p 하락하면 이익실현
프로필 이미지
큰바위얼굴
2015-11-19
172
글번호 92582
시스템
답변완료

문의드립니다

1틱차트에서 1초단위로 틱과 틱사이의 시간차를 나타내고 싶습니다
프로필 이미지
파인애플
2015-11-19
168
글번호 92576
지표
답변완료

수식 요청 드립니다.

안녕하세요. 아래 기존 시스템에 추가하는 수식에서 첫진입후 수익이 발생할 경우에만 피라미딩 합산목표수익 (외부변수 +0.5PT) 조건만족시 모든 포지션 강제청산 당일 매매종료하는 수식 추가 요청 드립니다. 첫진입후 손실 발생시에는 당일손실제한 등 현재 시스템 유지 입니다. 제 실력이 부족해서 목표수익 청산은 되는데 피라미딩 등 추가진입이 되는 현상이 나타나네요. 감사합니다. //************************************************************* input : N(1),NN(2),당일손실(1.2),i증감(0.1),진입수량(1); var : cnt(0),BCount(0),SCount(0); var : NP(0),PreNP(0),DayPL(0),loss(0),v1(0); var : mav1(0),mav2(0),mav3(0),mav4(0),mav5(0),mav6(0); var : Bxcond(false),SxCond(false); NP = NetProfit; if date != date[1] Then{ preNP = NP[1]; Condition1 = false; v1 = 0; } dayPL = NP-PreNP; BCount = 0 ; SCount = 0 ; for cnt = 0 to 10 { if EntryDate(cnt) == sdate and MarketPosition(cnt) == 1 then BCount = BCount + 1; if EntryDate(cnt) == sdate and MarketPosition(cnt) == -1 then SCount = SCount + 1; } if Condition1 == false and TotalTrades > TotalTrades[1] Then{ Condition1 = true; if PositionProfit(1) > 0 Then v1 = PositionProfit(1); } //-------------------------------------------------------------------------------------- if MarketPosition == 1 Then{ ExitLong("당일손실제한bx3",AtStop,avgEntryPrice-(당일손실+(dayPL-v1))/CurrentContracts); } if MarketPosition == -1 Then{ ExitShort("당일손실제한sx3",AtStop,avgEntryPrice+(당일손실+(dayPL-v1))/CurrentContracts); } //-------------------------------------------------------------------------------------- if MarketPosition == 1 and Bxcond == false and IsEntryName("BB") == false Then Buy("PBB",AtStop,LatestEntryPrice(0)+i증감,진입수량); if MarketPosition == -1 and SxCond == false and IsEntryName("BB") == false Then sell("PSS",AtStop,LatestEntryPrice(0)-i증감,진입수량); //----------------------------------------------------------------------------------- #기존수식 손실손절 스위칭 if MarketPosition == -1 and BCount+SCount < N and dayPL > -당일손실 Then buy("1BX",AtStop,EntryPrice+0.6); if MarketPosition == 1 and BCount+SCount < N and dayPL > -당일손실 Then sell("1SX",AtStop,EntryPrice-0.6); //------------------------------------------------------------------------------------------------------
프로필 이미지
dandy
2015-11-19
168
글번호 92569
시스템
답변완료

질문..

질문드립니다 각 코드와 검색식은 5분봉 차트 기준입니다 지표식과 검색식 각각 부탁드립니다 1. 지표식(p는 변수화) 예시) 3일전 2일전 1일전 당일지표 1번코드(UD_var3 > 0) : 만족 2번코드(vol_var1 > p) : 만족 3번코드 : value13,value23 지표로 표현 1,2번 코드가 동시만족을 다 하는 날의 최대양봉고가와 저가를 지표로 표현하는겁니다 위 예시는 3일전에 동시만족을 한것이고 이것이 2일전,1일전도 될수 있겠죠 그러면 그 해당일의 최대양봉고가와 저가를 지표로 표현하는겁니다 만약에 3일전도 만족하고 1일전도 동시만족을 다 했다면 최근에 만족한 1일전 값들이 표현되면 됩니다 2. 검색식 위 지표식으로 구한 최대양봉고가와 현재가의 간격을 비율로서 검색하는 식을 구하고자합니다 예를들어 5%을 변수로 입력후 검색하면 ((현재가 - value13)/value13)*100 --> 5% 이내인 종목들을 검색하고자합니다 ################################################################################### var : UD_var1(0),UD_var2(0),UD_var3(0); var : vol_var1(0),cnt(0),PreDate(0),PreDayV(0); var : vol_var1(0); var : Hv(0),LV(0),HC(0),LC(0),HC1(0),LC1(0),HV1(0),LV1(0),UD(0),UD1(0); 1번 UD_var1 = accumn(upvol,dayindex+1); UD_var2 = accumn(DOWNvol,dayindex+1); UD_var3 = UD_var1 - UD_var2 ; 2번 if date != date[1] Then PreDate = sdate[1]; if PreDate > 0 Then{ for cnt = 1 to 1000 { if stime[cnt] <= stime and sdate[cnt] == PreDate then{ PreDayV = DayVolume[cnt]; cnt = 10000;//if조건 만족하면 for문을 빠져나감 } } } vol_var1 = DayVolume/PreDayV*100 ; 3번 if date != date[1] Then{ var1 = 0; var2 = 0; value11 = value1[1]; //전일최대양봉고가 value21 = value2[1]; //전일최대양봉저가 value31 = value3[1]; //전일최대음봉고가 value41 = value4[1]; //전일최대음봉저가 value12 = value11[1]; //2일전최대양봉고가 value22 = value21[1]; //2일전최대양봉저가 value32 = value31[1]; //2일전최대음봉고가 value42 = value41[1]; //2일전최대음봉저가 value13 = value12[1]; //3일전최대양봉고가 value23 = value22[1]; //3일전최대양봉저가 value33 = value32[1]; //3일전최대음봉고가 value43 = value42[1]; //3일전최대음봉저가 } if C > O and H-L > var1 Then{ var1 = abs(C-O); value1 = H; //당일최대양봉고가 value2 = L; //당일최대양봉저가 } if C < O and H-L > var2 Then{ var2 = H-L; value3 = H; //당일최대음봉고가 value4 = L; //당일최대음봉저가 } #####################################################################################
프로필 이미지
9회말2아웃
2015-11-19
174
글번호 92567
지표
답변완료

일목균형표

기준선 기울기가 상향일때는 매수, 하향일때는 매도하는 수식 부탁드립니다...
프로필 이미지
디엠
2015-11-19
202
글번호 92563
시스템
답변완료

추적후이익실현

# 추적청산 input : AtrMult(12), AtrPeriod(14); var : AtrVal(0), posHigh(0), posLow(0); # ATR 추적청산 ATRVal = ATR(AtrPeriod) * AtrMult; PosHigh = Highest(H,BarssinceEntry+1); PosLow = Lowest(L,BarsSinceEntry+1); If MarketPosition == 1 Then sell("ATR1", AtStop, PosHigh - ATRVal); If MarketPosition == -1 Then buy("ATR2", AtStop, PosLow + ATRVal); 위수식후 최대수익대비하락이익실하면 다음추적신호안됨니다 나올수있게 수식부탁합니다. 예. 6p이후3p 하락하면 이익실현하고 다음추적신호가나오게 부탁합니다.
프로필 이미지
큰바위얼굴
2015-11-19
163
글번호 92562
시스템

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

프로필 이미지
dandy
2015-11-19
0
글번호 92559
시스템
답변완료

부탁드림니다

data2 > 0 and data3 < 0 파랑 막대기 data2 < 0 and data3 > 0 빨간 막대기 지표로 쓰고 싶습니다,
프로필 이미지
djhsfg
2015-11-19
180
글번호 92553
지표
답변완료

문의 드립니다.

안녕하세요. 일전에 당일 거래로만 계산한 OBV 10, 20 이평선을 부탁 드렸습니다. 알려주신 수식이 계산한 내용과 달라서 찬찬히 살펴보고 수정을 했습니다. 당일 2번 째 봉부터 계산을 하기 때문에 idx를 -1를 줘서 1부터 시작하게 했구요. OBVv = OBVv + Volume; OBV가 계속 누적이 되길래 OBVv = OBVv[1] + Volume; 이렇게 수정했습니다. 문제는 10개의 봉이 진행하고 11번 째 봉에서 부터는 맨 앞의 obv를 탈락시키고 이평값으로 나누어야 하는데 수식을 잘 모르겠습니다. 수식 살펴보시고 수정 부탁 드립니다. input : P1(10),P2(20); var : OBVV(0),idx(0),sum(0),mav1(0),mav2(0); If date != date[1] Then{ OBVV = 0; sum = 0; idx = 0; } idx = idx+1; if date == date[1] Then{ If Close[0] > Close[1] Then OBVv = OBVv + Volume; If Close[0] < Close[1] Then OBVv = OBVv - Volume; } sum = sum+OBVv; if idx < P1 Then mav1 = sum/idx; Else mav1 = AccumN(Obvv,P1)/P1; if idx < P2 Then mav2 = sum/idx; Else mav2 = AccumN(Obvv,P2)/P2; plot1(OBVv); plot2(mav1); plot3(mav2); ============================================== input : P1(10),P2(20); var : OBVV(0),idx(0),sum(0),mav1(0),mav2(0); If date != date[1] Then{ OBVV = 0; sum = 0; idx = -1; } idx = idx+1; if date == date[1] Then{ If Close[0] > Close[1] Then OBVv = OBVv[1] + Volume; If Close[0] < Close[1] Then OBVv = OBVv[1] - Volume; } sum = sum+OBVv; if idx < P1 Then mav1 = obvv/idx; Else mav1 = AccumN(Obvv,P1)/P1; if idx < P2 Then mav2 = obvv/idx; Else mav2 = AccumN(Obvv,P2)/P2; plot1(OBVv,"OBV"); plot2(mav1,"10이평"); plot3(mav2); 3527 3527 1 3527.00 2930 6457 2 3228.50 1879 8336 3 2778.67 2274 10610 4 2652.50 -1205 9405 5 1881.00 0 9405 6 1567.50 1121 10526 7 1503.71 -1451 9075 8 1134.38 -913 8162 9 906.89 443 8605 10 860.50 834 5912 10 591.20 -886 2096 10 209.60 588 805 10 80.50 ------------------------------------------ OBV 10봉전까지 당일 OBV 10 이평 누적OBV
프로필 이미지
고운무지개
2015-11-19
254
글번호 92552
지표