커뮤니티

시스템

프로필 이미지
달마7
2025-10-24 10:57:08
76
글번호 227265
답변완료

안녕하세요 아래식 완성 부탁드립니다  감사합니다 Inputs:          BB_Length(18),BB_Mult(1.8),      KC_Length(18),KC_Mult(1.3),     UseTrueRange(true),      당일수익틱수(600),당일손실틱수(350),     StopLossTicks(200),     TakeProfitTicks(400), NumDataStreams(2),     TrailTicks(50);
Vars:     HTF_Trend(0),     Source(0), Basis(0), Dev(0),     UpperBB(0), LowerBB(0),     MA(0), RangeVal(0), RangeMA(0),     UpperKC(0), LowerKC(0),     SqzOn(false), SqzOff(false), NoSqz(false),Val(0),     dayPl(0), N1(0), 당일수익(0), 당일손실(0),     Xcond(false),     LongCond(false), ShortCond(false); If NumDataStreams > 1 Then    HTF_Trend  = data2(ma(Close, 20))-data2(ma(Close, 50));
Source = Close; Basis = Average(Source, BB_Length); Dev = StdDev(Source, BB_Length); UpperBB = Basis + BB_Mult * Dev; LowerBB = Basis - BB_Mult * Dev; MA = Average(Source, KC_Length); RangeVal = iff(UseTrueRange, TrueRange, High - Low); RangeMA = Average(RangeVal, KC_Length); UpperKC = MA + RangeMA * KC_Mult; LowerKC = MA - RangeMA * KC_Mult; SqzOn  = (LowerBB > LowerKC) and (UpperBB < UpperKC); SqzOff = (LowerBB < LowerKC) and (UpperBB > UpperKC); NoSqz  = (not SqzOn) and (not SqzOff); Val = LinearRegValue(         Source - Average(             Average(Highest(High, KC_Length), Lowest(Low, KC_Length)),             Average(Close, KC_Length)         ),         KC_Length, 0       );
당일수익 = PriceScale * 당일수익틱수; 당일손실 = PriceScale * 당일손실틱수; If BDate <> BDate[1] Then Begin     Xcond = False;     N1 = NetProfit; End; dayPl = NetProfit - N1; If TotalTrades > TotalTrades[1] Then Begin     If dayPl >= 당일수익 or dayPl <= -당일손실 Then         Xcond = True; End;
If Xcond = False Then Begin     LongCond = (Val > 0) and (Val > Val[1])     and (HTF_Trend > 0);      ShortCond = (Val < 0) and (Val < Val[1])                 and (HTF_Trend < 0);     If MarketPosition = 0 Then Begin         If LongCond Then             Buy("ES_Long_SQZ") next bar at Market;         If ShortCond Then             SellShort("ES_Short_SQZ") next bar at Market;     End; End;
If MarketPosition <> 0 Then Begin     SetStopLoss(StopLossTicks);     SetProfitTarget(TakeProfitTicks);     SetTrailStop(TrailTicks); End;

시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-10-24 17:13:39

안녕하세요 예스스탁입니다. Inputs:BB_Length(18),BB_Mult(1.8),KC_Length(18),KC_Mult(1.3),UseTrueRange(true), 당일수익틱수(600),당일손실틱수(350),StopLossTicks(200),TakeProfitTicks(400), NumDataStreams(2),TrailTicks(50); Var:HTF_Trend(0),Source(0), Basis(0), Dev(0),UpperBB(0), LowerBB(0),MAv(0), RangeVal(0), RangeMA(0),UpperKC(0); var:LowerKC(0),SqzOn(false), SqzOff(false), NoSqz(false),Val(0),dayPl(0), N1(0), 당일수익(0), 당일손실(0),Xcond(false),LongCond(false), ShortCond(false); If NumDataStreams > 1 Then HTF_Trend = data2(ma(Close, 20))-data2(ma(Close, 50)); Source = Close; Basis = ma(Source, BB_Length); Dev = Std(Source, BB_Length); UpperBB = Basis + BB_Mult * Dev; LowerBB = Basis - BB_Mult * Dev; MAv = ma(Source, KC_Length); RangeVal = iff(UseTrueRange, TrueRange, High - Low); RangeMA = Average(RangeVal, KC_Length); UpperKC = MAv + RangeMA * KC_Mult; LowerKC = MAv - RangeMA * KC_Mult; SqzOn = (LowerBB > LowerKC) and (UpperBB < UpperKC); SqzOff = (LowerBB < LowerKC) and (UpperBB > UpperKC); NoSqz = (SqzOn == False) and (SqzOff == False); Val = LRL(Source - ma(ma(Highest(High, KC_Length), Lowest(Low, KC_Length)), ma(Close, KC_Length) ), KC_Length); 당일수익 = PriceScale * 당일수익틱수; 당일손실 = PriceScale * 당일손실틱수; If BDate <> BDate[1] Then Begin Xcond = False; N1 = NetProfit; End; dayPl = NetProfit - N1; If TotalTrades > TotalTrades[1] Then Begin If dayPl >= 당일수익 or dayPl <= -당일손실 Then Xcond = True; End; If Xcond == False Then Begin LongCond = (Val > 0) and (Val > Val[1])and (HTF_Trend > 0); ShortCond = (Val < 0) and (Val < Val[1]) and (HTF_Trend < 0); If MarketPosition == 0 Then Begin If LongCond Then Buy("ES_Long_SQZ",AtMarket); If ShortCond Then Sell("ES_Short_SQZ",AtMarket); End; End; SetStopLoss(StopLossTicks*PriceScale,PointStop); SetStopProfittarget(TakeProfitTicks*PriceScale,PointStop); if MarketPosition == 1 Then ExitLong("bx",AtStop,highest(H,BarsSinceEntry)-TrailTicks*PriceScale); if MarketPosition == -1 Then ExitShort("sx",AtStop,lowest(L,BarsSinceEntry)+TrailTicks*PriceScale); 즐거운 하루되세요