커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

예스종목검색으로 변환요쳥합니다...

아래는 키움 신호검색 200일 신고가 신호수식입니다...이것을 신고가 첫봉(일봉기준) 예스 종목검색으로 요청합니다..highest(C(1), 200) < C
프로필 이미지
서민순
2025-11-05
84
글번호 227683
종목검색
답변완료

익절 이후 익절가격 돌파할 경우만 거래 계속

익절1이 발생하면 다음 거래는 익절1 가격을 돌파해야 거래를 계속하는 수식으로 수정바랍니다.익절2가 발생하면 마찬가지로 익절2가를 돌파해야 거래를 계속하는 수식으로 수정바랍니다.아래 수식은 익절 발생과 상관없이 조건을 만족하면 거래를 수행합니다.항상 고맙습니다.******************************************************************************************************************************input : 진입시간(084500),진입제한시간(150000);input : 거래횟수(5),누적패수(5),연속패수(3),누적패수조정(4);input : b1(1),진입눌림1(2),진입돌파1(3);input : b2(2),진입눌림2(3),진입돌파2(4);input : als(550),atr1(0),atr2(315);input : bls(480),btr1(0),btr2(730);input : b1lock(120000),익절1(330);input : b2lock(140000),익절2(590);var : T1(0),entry(0),LL(0),EH(0),E1(0),H1(0),i1(0),S1(0),L1(0),V1(0);var : Tcond(false);var : loss(0),consecLoss(0),패수(0);//영업일변경if bdate != bdate[1] Then{ //손실횟수 초기화 0 loss = 0; //연속손실횟수 초기화 0 consecLoss = 0; //패수는 누적패수 패수 = 누적패수;}//청산발생if TotalTrades > TotalTrades[1] Then{ //손실이면 if PositionProfit(1) < 0 Then { //loss 1씩 증가 loss = loss+1; //consecLoss 1씩 증가 consecLoss = consecLoss+1; //consecLoss이 3이면 패수를 누적패수에서 누적패수조정으로 변경 if consecLoss == 연속패수 Then { 패수 = 누적패수조정; } } Else //손실이 아니면 consecLoss으로 초기화 consecLoss = 0;} if (sdate != sdate[1] and stime >= 진입시간) or (sdate == sdate[1] and stime >= 진입시간 and stime[1] < 진입시간) Then Tcond = true; if (sdate != sdate[1] and stime >= 진입제한시간) or (sdate == sdate[1] and stime >= 진입제한시간 and stime[1] < 진입제한시간) Then Tcond = false; if (sdate != sdate[1] and stime >= 진입시간) or (sdate == sdate[1] and stime >= 진입시간 and stime[1] < 진입시간) Then{ T1 = TotalTrades; E1 = 0; LL = L; } if stime >= 진입시간 then{ if L < LL Then LL = L; if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = (TotalTrades-T1)+1; if MarketPosition == 0 and entry == 0 Then{ if E1 == 0 and C >= LL+PriceScale*B1 Then{ E1 = 1; H1 = H; i1 = index; V1 = LL; //시작점 종가 } if E1 == 1 and index > i1 then{ if H > H1 Then H1 = H; #저가가 시작봉종가보다 클때만 눌림체크 if L >= V1 and L <= H1-PriceScale*진입눌림1 Then{ E1 = 2; i1 = index; S1 = H1; } } //시작점 종가보다 낮은 가격이 발생하면 초기화 if E1 >= 1 and L < V1 Then{ E1 = 0; LL = L; } if loss < 패수 and E1 == 2 and index > i1 and C >= S1+PriceScale*진입돌파1 and Tcond == true Then{ buy("b1"); } } if TotalTrades > TotalTrades[1] Then{ E1 = 0; LL = L; } if L < LL Then LL = L; if MarketPosition == 0 and entry >= 1 and entry < 거래횟수 Then{ if E1 == 0 and C >= LL+PriceScale*B2 Then{ E1 = 1; H1 = H; i1 = index; V1 = LL; //시작점 종가 } if E1 == 1 and index > i1 then{ if H > H1 Then H1 = H; #저가가 시작봉종가보다 클때만 눌림체크 if L >= V1 and L <= H1-PriceScale*진입눌림2 Then{ E1 = 2; i1 = index; S1 = H1; } } //시작점 종가보다 낮은 가격이 발생하면 초기화 if E1 >= 1 and L < V1 Then{ E1 = 0; LL = L; } if loss < 패수 and loss < 누적패수 and E1 == 2 and index > i1 and C >= S1+PriceScale*진입돌파2 and Tcond == true Then{ buy("b2"); } } } if MarketPosition== 1 Then{ if IsEntryName("b1") == true Then { SetStopLoss(als,PointStop); SetStopTrailing(atr2,atr1,PointStop,1); } Else if IsEntryName("b2") == true Then { SetStopLoss(bls,PointStop); SetStopTrailing(btr2,btr1,PointStop,1); } Else { SetStopLoss(0); SetStopTrailing(0,0); }}if marketposition() == 1 and IsEntryName("b1") == true and stime<b1lock Then ExitLong("익절1",Atlimit,EntryPrice+익절1);if marketposition() == 1 and IsEntryName("b2") == true and stime<b2lock Then ExitLong("익절2",Atlimit,EntryPrice+익절2);SetStopEndofday(151500);
프로필 이미지
목마와숙녀
2025-11-05
61
글번호 227682
시스템
답변완료

장시작부터 15분간의 최고가를 넘어서는 종목검색식을 만들고 싶은데 알려주세요

장시작 부터 15분간의 최고가를 구하고 현재가가 최고가를 넘어서면 검색되는 종목검색식을 만들고 싶은데 ////////////////////////////////////////////////////////////////// 예스트레이더 예스랭귀지 조건검색식// 09:00:00~09:16:00 양봉 여부 모니터링용 출력 추가////////////////////////////////////////////////////////////////Input: StartTime(90000), // 09시 00분 00초 EndTime(91500); // 09시 15분 00초Vars: OpenVal(0), highVal(0), CloseVal(0); // 지정 시간 구간 내 시가, 종가 구함OpenVal = TimeOpen(StartTime, EndTime);CloseVal = TimeClose(StartTime, EndTime);highVal = TimeHigh(StartTime, EndTime);// 조건 충족 시 종목 검색 신호 발생if Close>highVal and CloseVal>OpenVal Then Find(CloseVal);뭐가 잘못되서 2000~2200 까지의 값만 나올까요?
프로필 이미지
성공한럭키홍홍
2025-11-05
68
글번호 227681
종목검색
답변완료

문의드립니다

**data2 이평선참고해서 data1증액매수식인데요.1.이평선골든크로스이후에Inputs: FastMovAvg(12), SlowMovAvg(26), MACDMovAvg(9);Variables: XMACD(0);If Crossup(MACD(FastMovAvg, SlowMovAvg), EMA(MACD(FastMovAvg, SlowMovAvg), MACDMovAvg)[1]) Then Buy ("MACD");위수식을 추가로입력하고싶습니다.--원래수식 --inputs : P1(5),P2(20),RSILength(10), OverSold(30),OverBought(70);input : 첫진입금액(1000000),A(10);var : m1(0,Data2),m2(0,Data2), R(0,Data1);var : TT(0,Data1),T1(0,Data1),entry(0,Data1),mm(0,data1),vol(0,Data1);m1 = Data2(ma(C,P1));m2 = Data2(ma(C,P2));R = data1(RSI(RSILength));If Data2(m1 > m2) and Crossup(R, OverSold) Then{ if TotalTrades == 0 Then mm = 첫진입금액; Else mm = mm*(1+A/100); Buy("B",OnClose,Def,Floor(Floor(mm/C)/10)*10);}if data2(crossup(ma(c,5),ma(c,20))) Then{ if TotalTrades == 0 Then mm = 첫진입금액; Else mm = mm*(1+A/100); Buy("B2",OnClose,Def,Floor(Floor(mm/C)/10)*10);}if Data2(CrossDown(m1,m2)) or Crossup(R, OverBought) Then Sell("S");
프로필 이미지
2685up
2025-11-05
81
글번호 227676
시스템
답변완료

거래량관련 종목검색식을 만들고 싶은데 잘 안됩니다 도와주세요

파워종목검색에 쓸 종목검색을 추가하고 싶은데 필요한 부분을 gpt에게 물어도 엉뚱한 답만 나오네요원하는 종목 검색 조건상대거래량 = 장시작(9시00분01초)부터 검색하는 시점까지의 거래량/오늘 제외 전일부터 14일동안의 장시작부터 같은시각까지의 거래량의 평균1. 상대거래량이 100% 이상인 종목 검색2, 상대거래량 랭킹을 만들어서 상위20위권만 종목 검색이렇게 만들고 싶은데 잘 안됩니다 도와주세요
프로필 이미지
성공한럭키홍홍
2025-11-05
113
글번호 227673
종목검색
답변완료

문의드립니다.

답변해 주신 아래 수식에서 나스닥 10분봉 초기자본 1만달러로 시작하는 수식으로 변경 그리고 아래수식을 시스템에 적용을 하면 최초에 한번 만 매수가 일어나고 그 이후에는 매매가 안일어나는 것 같습니다.수정을 부탁드립니다.//////////////////////////////// 최초 자본 100만원 10분봉 매매에서 무포지션시 무조건 70% 매수하고요. 30% 현금이고요. 매수 투자분: 현금 비율이 70:30 되도록 투자비율 리밸런싱을 합니다. 투자매수에서 10% 수익이 나면 77:30 비율이 되면 비율이 70: 30 되도록 투지매수 이익분을 처분하고 반대로 투자매수에서 10% 손실이 나면 63:30 비율이 되면 비율이 70: 30 되도록 현금을 투자합니다. 수식을 부탁드립니다. 시스템답변 1예스스탁 예스스탁 답변2025-11-04 09:18:57 안녕하세요 예스스탁입니다. input : 자본(1000000); var : MM(0),vol(0),Cash(0),diff(0); MM = 자본+NetProfit; if MarketPosition == 0 and Index > 5 Then { vol = Floor((MM*0.7)/C); Buy("B",OnClose,Def,vol); Cash = MM-(Vol*C); } if MarketPosition == 1 Then { var1 = C*CurrentContracts; var2 = (var1+Cash)*0.7; if var1 >= var2 Then { diff = Floor(abs(var1-var2)/C); if diff > 0 Then { ExitLong("bx",OnClose,Def,"",diff,2); Cash = Cash + (diff*C); } } Else { diff = Floor(abs(var1-var2)/C); if diff > 0 Then { Buy("bb",OnClose,Def,diff); Cash = Cash - (diff*C); } } } 즐거운 하루되세요
프로필 이미지
종호
2025-11-05
77
글번호 227664
시스템
답변완료

종목 검색식 부탁드립니다.

1. 아래의 예스트레이더 수식에, "0봉전 ~10봉전까지의 모든종목" 을 추가하여 수정 부탁드려요. -아래--- Input: ConvPeriod1(8), BasePeriod1(19), SpanPeriod1(33), ConvPeriod2(9), BasePeriod2(26), SpanPeriod2(52); Vars: Conv1(0), Base1(0), Span1_1(0), Span1_2(0), Cloud1_Upper(0), Cloud1_Lower(0), Conv2(0), Base2(0), Span2_1(0), Span2_2(0), Cloud2_Upper(0), Cloud2_Lower(0), BullishCross(false), BearishCross(false); // 반일목 계산 Conv1 = (Highest(H, ConvPeriod1) + Lowest(L, ConvPeriod1)) / 2; Base1 = (Highest(H, BasePeriod1) + Lowest(L, BasePeriod1)) / 2; Span1_1 = (Conv1 + Base1) / 2; Span1_2 = (Highest(H, SpanPeriod1) + Lowest(L, SpanPeriod1)) / 2; if Span1_1 < Span1_2 then { Cloud1_Upper = Span1_1; Cloud1_Lower = Span1_2; } else { Cloud1_Upper = Span1_2; Cloud1_Lower = Span1_1; } // 정일목 계산 Conv2 = (Highest(H, ConvPeriod2) + Lowest(L, ConvPeriod2)) / 2; Base2 = (Highest(H, BasePeriod2) + Lowest(L, BasePeriod2)) / 2; Span2_1 = (Conv2 + Base2) / 2; Span2_2 = (Highest(H, SpanPeriod2) + Lowest(L, SpanPeriod2)) / 2; if Span2_1 < Span2_2 then { Cloud2_Upper = Span2_1; Cloud2_Lower = Span2_2; } else { Cloud2_Upper = Span2_2; Cloud2_Lower = Span2_1; } // 돌파 조건 BullishCross = CrossUp(Cloud1_Upper, Cloud2_Upper); // 상향 돌파 BearishCross = CrossDown(Cloud1_Lower, Cloud2_Lower); // 하향 돌파 // 검색 조건 if BullishCross then { Find(1); // 상향 돌파 종목 검색 } /* 하향 돌파 종목도 검색하려면 아래 주석 해제 if BearishCross then { Find(1); }*/
프로필 이미지
일지매7
2025-11-05
67
글번호 227659
종목검색
답변완료

아래의 트레이디이뷰 수식을 변환부탁드립니다.

//@version=4study("ATR Breakouts", overlay=true)per = input(50, title="Length")aper = input(20, title="Atr Length")LongEntry = ema(close, per) + 2 * atr(aper)LongStopLoss = ema(close, per) + atr(aper)ShortEntry = ema(close, per) - 2 * atr(aper)ShortStopLoss = ema(close, per) - atr(aper)plot(LongEntry, "Long Entry Threshold", color=color.green, style=plot.style_line)plot(LongStopLoss, "Long Stop Loss", color=color.blue, style=plot.style_line)plot(ShortEntry, "Short Entry Threshold", color=color.red, style=plot.style_line)plot(ShortStopLoss, "Short Stop Loss", color=color.black, style=plot.style_line)
프로필 이미지
해암
2025-11-05
90
글번호 227658
지표
답변완료

종목검색식 부탁드립니다

아래수식 변환 부탁드립니다감사합니다%%%%%%%%%%%%%%%%%%%M1 = ma(C, 기간);E1=M1>M1[1];Es = AccumN(E1,10) == 10;D1 = M1 < M1[1] && M1[1] > M1[2];H1 = Es[1] && D1;S1=Valuewhen(1, H1, M1[1]);
프로필 이미지
김승빈
2025-11-04
60
글번호 227656
종목검색
답변완료

사용하고있는 시스템에 추가로 강제청산 여러개 게속 되는것 보고싶습니다

안녕하세요 수고가 많으십니다 감사합니다 저희 가쓰고있는 시스템들은 식 여러 종류가 있습니다 다양하게 무수히 많습니다 저희가 쓰고 있는 시스템 에 추가 할 아이디어 말씀 드립니다 강제로 봉의 갯수 완성시 마다 청산을 넣고 싶습니다 변수 처리하여 한개 봉완성 마다 청산할건지 2개봉완성마다 청산할건지 3개봉완성마다 청산할건지 4개봉완성마다 청산할건지 를 결정 할수있게 하고져합니다 국내선물 kp200 연결선물 아침 8시00분 시작하여 종료시간는 강제청산하고 마친다 국내선물 kQ150 연결선물 아침 8시00분 시작하여 종료시간는 강제청산하고 마친다 해외선물 시작시간 8시00분 종료시간는 강제 청산 하고 마친다 해외 선물 나스닥 , 골드 , 크로드 오일 종목 해당 합니다 방법는 각 종목들 분차트 140분 차트 사용하였을때 계속 이어서 강제청산 정리하고 새로운 신호 대기 한다 캔들봉의 갯수가 1개 완성시 즉시 포지션 청산 이어서 추가 캔들봉 1개 완성시 즉시 청산 이어서 추가 캔들 봉1개완성시 즉시 청산 계속 되어야합니다 ? ..... 될까요 캔들봉의 갯수가 2개 완성시 즉시 포지션 청산 이어서 추가 캔들봉 2개 완성시 즉시 청산 이어서 추가 캔들 봉2개완성시 즉시 청산 계속 되어야합니다 ......... 캔들봉의 갯수가 3개 완성시 즉시 포지션 청산 이어서 추가 캔들봉 3개 완성시 즉시 청산 이어서 추가 캔들 봉3개완성시 즉시 청산 계속 되어야합니다 .......... 캔들봉의 갯수가 4개 완성시 즉시 포지션 청산 이어서 추가 캔들봉 4개 완성시 즉시 청산 이어서 추가 캔들 봉4개완성시 즉시 청산 계속 되어야합니다 .......... 그리고 해외선물 나스닥 , 골드, 크로드오일 도 같은 방법으로 봉 갯수 완성마다 계속 강제 청산 정리 하고 새로운 신호 대기 하고싶습니다 변수에서 저희가 설정가능하게 해주세요 봉갯수 완성시 마다 무조건 아무조건없이 무조건 청산하고 다음 신호 대기한다 무조건 청산 하면 다음봉 에서 저희 식에서 조건이 되면 매수나 매도 진입 됩니다 이렇게 작동 되도록 잘좀 부탁드립니다 수고가 많으십니다 대단히 감사합니다
프로필 이미지
놀이터
2025-11-04
57
글번호 227655
시스템