커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

수식 수정 부탁드립니다.

안녕하세요. 아래의 피라미딩전략에 다소 오류가 있는듯하여 수정 요청드립니다. 감사합니다. 1. 손실시에는 다음 진입신호가 나올때까지 보유하며, 총 5회까지 진입허용 2. 각각의 진입은 수익시에만 트레일링스탑으로 청산 if MarketPosition == 0 Then { if CurrentEntries == 0 Then { if BuyCond == True Then Buy("Long1", AtMarket); } } if MarketPosition == 1 Then { if CurrentEntries == 1 Then { if BuyCond == True Then Buy("Long2", AtMarket); if PositionProfit(0) > 0 Then ExitLong("TStop1-0", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long1"); } if CurrentEntries == 2 Then { if BuyCond == True Then Buy("Long3", AtMarket); if PositionProfit(0) > 0 Then ExitLong("TStop2-0", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long2"); if PositionProfit(1) > 0 Then ExitLong("TStop2-1", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long1"); } if CurrentEntries == 3 Then { if BuyCond == True Then Buy("Long4", AtMarket); if PositionProfit(0) > 0 Then ExitLong("TStop3-0", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long3"); if PositionProfit(1) > 0 Then ExitLong("TStop3-1", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long2"); if PositionProfit(2) > 0 Then ExitLong("TStop3-2", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long1"); } if CurrentEntries == 4 Then { if BuyCond == True Then Buy("Long5", AtMarket); if PositionProfit(0) > 0 Then ExitLong("TStop4-0", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long4"); if PositionProfit(1) > 0 Then ExitLong("TStop4-1", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long3"); if PositionProfit(2) > 0 Then ExitLong("TStop4-2", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long2"); if PositionProfit(3) > 0 Then ExitLong("TStop4-3", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long1"); } if CurrentEntries == 5 Then { if PositionProfit(0) > 0 Then ExitLong("TStop5-0", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long5"); if PositionProfit(1) > 0 Then ExitLong("TStop5-1", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long4"); if PositionProfit(2) > 0 Then ExitLong("TStop5-2", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long3"); if PositionProfit(3) > 0 Then ExitLong("TStop5-3", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long2"); if PositionProfit(4) > 0 Then ExitLong("TStop5-4", Atstop, highest(high,barsSinceEntry+1) - ATR, "Long1"); } }
프로필 이미지
착한이
2024-09-26
685
글번호 183780
시스템
답변완료

수식 하나 부탁드립니다.

안녕하세요 09 시 10분에 매수 09 시 20분에 매도 09 시 30분에 매수 09 시 40분에 매도 하는 수식을 부탁드립니다. 항상 감사드립니다.
프로필 이미지
뭐이런걸다
2024-09-26
703
글번호 183779
시스템
답변완료

문의 드립니다

안녕하세요 키움지표 전환 부탁드립니다 1. 수식1 TT=BBandsUp(20,2); ValueWhen(1,TT >TT(1),TT) 수식2 TT=BBandsUp(14,1.1); ValueWhen(1,TT >TT(1),TT) 수식3 TT=BBandsUp(20,2); ValueWhen(1,TT < TT(1),TT) 수식4 TT=BBandsUp(14,1.1); ValueWhen(1,TT < TT(1),TT) 2. 수식1 TT=BBandsDown(20,2); ValueWhen(1,TT >TT(1),TT) 수식2 TT=BBandsDown(14,1.1); ValueWhen(1,TT >TT(1),TT) 수식3 TT=BBandsDown(20,2); ValueWhen(1,TT < TT(1),TT) 수식4 TT=BBandsDown(14,1.1); ValueWhen(1,TT < TT(1),TT) 3 수식1 highest(H, period, 1); 수식2 lowest(L, period, 1); 수식3 highest(C, period, 1); 수식4lowest(C, period, 1); 4 수식1 highest(H, period, 0); 수식2 lowest(L, period, 0); 수식3 highest(C, period, 0); 수식4lowest(C, period, 0); 3번고4번의 기간은 20으로하고 변경가능하게 부탁드립니다 5. 수식1(선1) ((highest(high,shortPeriod)+lowest(low,shortPeriod) +highest(high,midPeriod)+lowest(low,midPeriod))/4 +2*BBandsUp(Period,D1))/3 수식2(선2) ((highest(high,shortPeriod)+lowest(low,shortPeriod)+ (highest(high,longPeriod)+lowest(low,longPeriod)))/4 +2*BBandsUp(Period,D1))/3 수식3(선1) ((highest(high,shortPeriod)+lowest(low,shortPeriod)+highest(high,midPeriod)+lowest(low,midPeriod))/4 +2*BBandsDown(Period,D1))/3 수식4(선2) ((highest(high,shortPeriod)+lowest(low,shortPeriod) +(highest(high,longPeriod)+lowest(low,longPeriod)))/4 +2*BBandsDown(Period,D1))/3 지표조건은 5,15,30. d1은3,기간은 20 입니다 (변경가능) 감사합니다
프로필 이미지
만강
2024-09-26
771
글번호 183770
지표
답변완료

첫진입과 나머지 진입 전체거래횟수1

요청내용1) 아래 수식은 s1 진입이 주된 진입수식 입니다. s1 진입이 없을 경우 s2,s3,b1 중 어느 하나가 진입합니다. s1 진입이 있을 경우, 나머지는 진입하지 않는다는 조건을 추가해 주십시요. 요청 내용2) 거래는 데이트레이딩이며, 당일 발생봉부터 계산한다는 내용과 전체수식 통틀어 거래는 1번만 한다는 내용도 추가해 주십시요. 요청내용 3 손절 수식을 작성해 보았습니다. 맞는지 살펴주십시요. 항상 고맙습니다. **************************************************************************** input : d2(50),d3(800); input : dd2(4000); input : 몸통(0.65),몸통lock(090000); input : dd3(3000); input : s1ls(4.2),s1tr(5.2); input : s2ls(4.2),s2tr(5.2); input : s3ls(4.2),s3tr(5.2); input : b1ls(1.8),b1tr(4.4); if Data2(c<highd(0)-d2) and Data3(c)<d3 then Sell("s1"); if Data2(c<opend(0)-dd2) Then Sell("s2"); if c<o and abs(o-c)>몸통 Then Sell("s3"); if Data3(c>lowd(0)+dd3) Then Buy("b1"); if MarketPosition== -1 Then { if IsEntryName("s1") == true Then { SetStopLoss(s1ls,PointStop); SetStopTrailing(s1tr,0,PointStop,1); } Else if IsEntryName("s2") == true Then { SetStopLoss(s2ls,PointStop); SetStopTrailing(s2tr,0,PointStop,1); } Else if IsEntryName("s3") == true Then { SetStopLoss(s3ls,PointStop); SetStopTrailing(s3tr,0,PointStop,1); } } else if MarketPosition== 1 Then { SetStopLoss(b1ls,PointStop); SetStopTrailing(b1tr,0,PointStop,1); } Else { SetStopLoss(0); SetStopProfittarget(0); }
프로필 이미지
목마와숙녀
2024-11-06
742
글번호 183767
시스템
답변완료

부탁드립니다

과거에 만들어 주신 수식입니다. //n이 0이면 당일시가, 1이면 전일종가, 2이면 차트첫봉시가기준 으로 되어 있습니다. 이렇게 이용하니, 전일의 그래프와 당일의 그래프가 겹쳐져서 당일아침에 왜곡이 많이 생깁니다. 그래서 날짜와 시간을 지정해서 그때부터 그래프가 그려지면 좋겠습니다.. 부탁드립니다. //n이 0이면 당일시가, 1이면 전일종가, 2이면 차트첫봉시가기준 //data1-콜, data2-풋, data3-선물 input : N(0),선비(0),옵비(0),P1(3),P2(5),P3(10); var : O1(0,data1),R1(0,data1),M21(0,data1),M22(0,data1),M23(0,data1); var : O2(0,data2),R2(0,data2);// var : O3(0,data3),R3(0,data3),M11(0,data3),M12(0,data3),M13(0,data3); var : sp(0); if N == 0 Then //시가기준 { O1 = data1(openD(0)); O2 = data2(openD(0)); O3 = data3(openD(0)); } if N == 1 Then { O1 = data1(closeD(1)); O2 = data2(closeD(1)); O3 = data3(closeD(1)); } if N == 2 then { if data1(index == 0) Then O1 = data1(O); if data2(index == 0) Then O2 = data2(O); if data3(index == 0) Then O3 = data3(O); } if O1 > 0 Then { R3 = data3((C-O3)/O3*선비); M11 = data3(ma(R1,P1)); M12 = data3(ma(R1,P2)); M13 = data3(ma(R1,P3)); plot1(R3,"d1 등락률"); plot2(M11,"d1 이평1"); plot3(M12,"d1 이평2"); plot4(M13,"d1 이평3"); } if O2 > 0 Then { R1 = data1((C-O1)/O1*옵비); M21 = data1(ma(R1,P1)); M22 = data1(ma(R1,P2)); M23 = data1(ma(R1,P3)); plot21(R1,"d2 등락률"); plot6(M21,"d2 이평3"); plot7(M22,"d2 이평3"); plot8(M23,"d2 이평3"); } if O3 > 0 Then { R2 = data2((C-O2)/O2*옵비)*-1; plot31(R2,"d3 등락률"); plot41(sp,"sp 등락률"); } if O1 > 2 and O3 > 0 Then { sp = r1-r2; Plot10(sp); }
프로필 이미지
파란별
2024-09-26
1085
글번호 183766
지표
답변완료

거래 종료(포지션 정리)관련 문의 드립니다.

항상 많은 도움 감사드립니다. 나스닥 시스템 거래를 24시간 동안 운용하고 있습니다. 그런데 나스닥 시장 자체가 현지 시간기준으로 3시 30분부터 휴식시간이 있으며 예스스탁 시스템은 또한 아침 7시경에 점검 때문에 시스템이 종료가 됩니다. 그래서 시스템은 24시간 돌아가되 현지 시간기준으로 3시 20분에 포지션이 있다면 정리하고 거래가 종료되도록 설정하고 싶습니다. 거래 시간으로 설정한다면 현지시간 오후 17:30분에 시작을 해서 다음날 오후 15시 20분에 정리가 되게 하고 싶습니다. SetStopEndofday 명령어를 사용해 보았는데 설정을 잘못하였는지 설정한 시간이후에는 거래가 이루어 지지 않는 현상이 발생해서 도움 요청 드립니다. 정리하자면 거래 시간은 17:30 ~ 다음날 15:20 15:20분에 모든 포지션을 정리한다... 입니다. 그리고 시스템이 돌아가는 중에 손실제한을 100으로 설정하는 법도 부탁드립니다. 손실 제한을 걸어보니 거래가 이루어 지지 않아서요...
프로필 이미지
비정성시
2024-09-26
821
글번호 183760
시스템
답변완료

검색식 부탁합니다

검색시 부탁드립니다.(RSI 다이버젼스) 조건은 하부 지표에서 1) 해당 지표값이 -15이하일때 2) 색상이 적색에서 연두색으로 변하는 지점에서의 검색식 부탁합니다 input : len_fast(5),len_slow(14); var : src_fast(0),src_slow(0); var : alpha_fast(0),up_fast(0),down_fast(0),rsi_fast(0); var : alpha_slow(0),up_Slow(0),down_slow(0),rsi_slow(0); var : divergence(0); src_fast = C; var1 = max(src_fast-src_fast[1],0); Var2 = -min(src_fast-src_fast[1],0); src_slow = C; var3 = max(src_slow-src_slow[1],0); Var4 = -min(src_slow-src_slow[1],0); alpha_fast = 1/len_fast; up_fast = 0; up_fast = IFf(IsNan(up_fast[1])== true, ma(var1,len_fast),alpha_fast*var1+(1 - alpha_fast)*up_fast[1]); down_fast = 0; down_fast = IFf(IsNan(down_fast[1])== true, ma(var2,len_fast),alpha_fast*var2+(1 - alpha_fast)*down_fast[1]); rsi_fast = iff(down_fast == 0 , 100 , IFf( up_fast == 0 , 0 , 100 - (100 / (1 + up_fast / down_fast)))); alpha_slow = 1/len_slow; up_slow = 0; up_slow = IFf(IsNan(up_slow[1])== true, ma(Var3,len_slow),alpha_slow*Var3+(1 - alpha_slow)*up_slow[1]); down_slow = 0; down_slow = IFf(IsNan(down_slow[1])== true, ma(Var4,len_slow),alpha_slow*Var4+(1 - alpha_slow)*down_slow[1]); rsi_slow = iff(down_slow == 0 , 100 , iff(up_slow == 0 , 0 , 100 - (100 / (1 + up_slow / down_slow)))); divergence = rsi_fast - rsi_slow; plot1(divergence, "divergence",iff(divergence > 0 , lime,red)); PlotBaseLine1(0);
프로필 이미지
행복만땅
2024-10-10
1015
글번호 183759
종목검색
답변완료

수식변경요청

안녕하세요 늘 도움 감사드립니다. 아래의 수식에서 ... 고점은 음봉의 고점에... 저점은 양봉의 저가에 고저가 그려지도록 부탁드립니다. input : af(0.02), maxAF(0.2),추세선두께(1),추세선색1(YELLOW),추세선색2(CYAN),연장선두께(2),연장선색(gray); input : 텍스트출력(1); var : T(0),HH(0),LL(0),HD(0),HT(0),LD(0),LT(0); var : HH1(0),LL1(0),HD1(0),HT1(0),LD1(0),LT1(0); var : TL1(0),TL2(0),cnt(0),count(0); var : TL3(0),TL4(0),TL5(0),TL6(0),TL7(0); var : Tx3(0),Tx4(0),Tx5(0),Tx6(0),Tx7(0); Var : TL11(0),TL22(0); var1 = CSar(af,maxAF); if crossup(c,var1) Then { T = 1; HH = H; HD = sdate; HT = stime; HH1 = HH[1]; HD1 = HD[1]; HT1 = HT[1]; if LL > 0 Then { #TL1 = TL_new(LD[1],LT[1],LL[1],HD,HT,HH); TL_Delete(TL3); TL_Delete(TL4); TL_Delete(TL5); TL_Delete(TL6); TL_Delete(TL7); TL3 = TL_new(HD[1],HT[1],HH[1],sdate,stime,HH[1]); TL4 = TL_new(HD[1],HT[1],(HH[1]+LL)/2,sdate,stime,(HH[1]+LL)/2); TL5 = TL_new(HD[1],HT[1],LL,sdate,stime,LL); TL6 = TL_new(HD[1],HT[1],HH[1]+(HH[1]-LL)/2,sdate,stime,HH[1]+(HH[1]-LL)/2); TL7 = TL_new(HD[1],HT[1],LL-(HH[1]-LL)/2,sdate,stime,LL-(HH[1]-LL)/2); //추세선 오른쪽 연장설정 TL_SetExtRight(TL3,true); TL_SetExtRight(TL4,true); TL_SetExtRight(TL5,true); TL_SetExtRight(TL6,true); TL_SetExtRight(TL7,true); Text_Delete(TX3); Text_Delete(TX4); Text_Delete(TX5); Text_Delete(TX6); Text_Delete(TX7); value3 = HH[1]; value4 = (HH[1]+LL)/2; value5 = LL; value6 = HH[1]+(HH[1]-LL)/2; value7 = LL-(HH[1]-LL)/2; TX3 = Text_New(sDate,sTime,value3,NumToStr(value3,2)); TX4 = Text_New(sDate,sTime,value4,NumToStr(value4,2)); TX5 = Text_New(sDate,sTime,value5,NumToStr(value5,2)); TX6 = Text_New(sDate,sTime,value6,NumToStr(value6,2)); TX7 = Text_New(sDate,sTime,value7,NumToStr(value7,2)); /* if 텍스트출력 == 1 then { Tx11 = Text_New(HD1,HT1,HH1,NumToStr((HH1-LL1)/PriceScale,0)+NewLine+NumToStr(HH1,2)); Text_SetStyle(tx11,2,1); Text_Delete(tx1); Tx1 = Text_New(HD,HT,HH,NumToStr((HH-LL[1])/PriceScale,0)+NewLine+NumToStr(HH,2)); Text_SetStyle(tx1,2,1); }*/ } #TL11 = TL_New(HD1,HT1,HH1,HD,HT,HH); } if CrossDown(c,var1) Then { T = -1; LL = L; LD = sdate; LT = stime; LL1 = LL[1]; LD1 = LD[1]; LT1 = LT[1]; if HH > 0 Then { #TL2 = TL_new(HD[1],HT[1],HH[1],LD,LT,LL); TL_Delete(TL3); TL_Delete(TL4); TL_Delete(TL5); TL_Delete(TL6); TL_Delete(TL7); TL3 = TL_new(LD[1],LT[1],HH,sdate,stime,HH); TL4 = TL_new(LD[1],LT[1],(HH+LL[1])/2,sdate,stime,(HH+LL[1])/2); TL5 = TL_new(LD[1],LT[1],LL[1],sdate,stime,LL[1]); TL6 = TL_new(LD[1],LT[1],LL[1]-(HH-LL[1])/2,sdate,stime,LL[1]-(HH-LL[1])/2); TL7 = TL_new(LD[1],LT[1],HH[1]+(HH-LL[1])/2,sdate,stime,HH[1]+(HH-LL[1])/2); //추세선 오른쪽 연장설정 TL_SetExtRight(TL3,true); TL_SetExtRight(TL4,true); TL_SetExtRight(TL5,true); TL_SetExtRight(TL6,true); TL_SetExtRight(TL7,true); Text_Delete(TX3); Text_Delete(TX4); Text_Delete(TX5); Text_Delete(TX6); Text_Delete(TX7); value3 = HH; value4 = (HH+LL[1])/2; value5 = LL[1]; value6 = HH+(HH-LL[1])/2; value7 = LL[1]-(HH-LL[1])/2; TX3 = Text_New(sDate,sTime,Value3,NumToStr(Value3,2)); TX4 = Text_New(sDate,sTime,Value4,NumToStr(Value4,2)); TX5 = Text_New(sDate,sTime,Value5,NumToStr(Value5,2)); TX6 = Text_New(sDate,sTime,Value6,NumToStr(Value6,2)); TX7 = Text_New(sDate,sTime,Value7,NumToStr(Value7,2)); /* if 텍스트출력 == 1 then { Tx22 = Text_New(LD1,LT1,LL1,NumToStr((HH1-LL1)/PriceScale,0)+NewLine+NumToStr(LL1,2)); Text_SetStyle(tx22,2,0); Text_Delete(tx2); Tx2 = Text_New(LD,LT,LL,NumToStr((HH[1]-LL)/PriceScale,0)+NewLine+NumToStr(LL,2)); Text_SetStyle(tx2,2,0); }*/ } #TL22 = TL_New(LD1,LT1,LL1,LD,LT,LL); } if T == 1 then { if H > HH Then { HH = H; HD = sdate; HT = stime; TL_SetEnd(TL1,HD,HT,HH); TL_SetEnd(TL11,HD,HT,HH); /* if 텍스트출력 == 1 then { Text_Delete(tx1); Tx1 = Text_New(HD,HT,HH,NumToStr((HH-LL[1])/PriceScale,0)+NewLine+NumToStr(HH,2)); Text_SetStyle(tx1,2,1); }*/ } } if T == -1 then { if L < LL Then { LL = L; LD = sdate; LT = stime; TL_SetEnd(TL2,LD,LT,LL); TL_SetEnd(TL22,LD,LT,LL); /* if 텍스트출력 == 1 then { Text_Delete(tx2); Tx2 = Text_New(LD,LT,LL,NumToStr((HH[1]-LL)/PriceScale,0)+NewLine+NumToStr(LL,2)); Text_SetStyle(tx2,2,0); }*/ } } #추세선 두께, 색상 TL_SetSize(TL1,추세선두께); TL_SetSize(TL11,추세선두께); TL_SetSize(TL2,추세선두께); TL_SetSize(TL22,추세선두께); TL_SetColor(TL1,추세선색1); TL_SetColor(TL11,추세선색1); TL_SetColor(TL2,추세선색2); TL_SetColor(TL22,추세선색2); #연장선 두께, 색상 TL_SetSize(TL3,연장선두께); TL_SetSize(TL4,연장선두께); TL_SetSize(TL5,연장선두께); TL_SetSize(TL6,연장선두께); TL_SetSize(TL7,연장선두께); TL_SetColor(TL3,연장선색); TL_SetColor(TL4,연장선색); TL_SetColor(TL5,연장선색); TL_SetColor(TL6,연장선색); TL_SetColor(TL7,연장선색); Text_SetLocation(TX3,sDate,sTime,value3); Text_SetLocation(TX4,sDate,sTime,Value4); Text_SetLocation(TX5,sDate,sTime,Value5); Text_SetLocation(TX6,sDate,sTime,Value6); Text_SetLocation(TX7,sDate,sTime,Value7); Text_SetStyle(TX3,0,1); Text_SetStyle(TX4,0,1); Text_SetStyle(TX5,0,1); Text_SetStyle(TX6,0,1); Text_SetStyle(TX7,0,1);
프로필 이미지
알리섬
2024-09-26
769
글번호 183758
지표
답변완료

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

예스 종목검색식으로 부탁드립니다. 감사합니다...^^ A=EOM(eomP); B=avg(EOM(eomP),eomSig); M=crossup(A,B); E=crossdown(A,B); F=valuewhen(1,M or E, o); f1=crossup(c,F); f2=crossdown(c,F); G=valuewhen(1, f1 or f2, o); g1=crossup(c,G); g2=crossdown(c,G); VV=valuewhen(1, g1 or g2,o); 조건=valuewhen(1,CrossDown(O,VV),VV(1)); CrossUp(C, 조건) (지표변수) eomP: 40 / eomSig: 3
프로필 이미지
비밀통로
2024-09-26
906
글번호 183757
종목검색
답변완료

키움수식 종목검색

period 20 BUY=(C - lowest(C, period))/C*100; MAX(A, 0) SELL B=(highest(C, period)- C)/C*100; MAX(B, 0) CROSSUP(BUY, SELL)
프로필 이미지
박셰프
2024-09-26
755
글번호 183756
종목검색