ملٹی فیکٹر ماڈل پر مبنی لمحہ الٹ کرنے کی حکمت عملی زیادہ مستحکم اور اعلی واپسی حاصل کرنے کے لئے ملٹی فیکٹر ماڈل اور رفتار الٹ کرنے کی حکمت عملی کو یکجا کرتی ہے۔ یہ حکمت عملی 123 الٹ اور سنگ میل اشارے کو دو آزاد سگنل کے طور پر استعمال کرتی ہے اور جب دونوں سگنل مستقل ہوتے ہیں تو پوزیشن قائم کرتی ہے۔
اسٹریٹیجی میں دو ذیلی حکمت عملی شامل ہیں: 123 الٹ پلٹ کی حکمت عملی اور سنگم اشارے کی حکمت عملی۔
123 الٹ پلٹ کی حکمت عملی اس بات پر مبنی تجارتی سگنل تیار کرتی ہے کہ آیا قیمت 2 دن تک مسلسل بڑھتی یا گرتی رہی ہے ، اسٹاک اشارے کے ساتھ مل کر یہ فیصلہ کرنے کے لئے کہ آیا مارکیٹ زیادہ ٹھنڈی ہے یا زیادہ گرم ہے۔ خاص طور پر ، جب قیمت 2 دن تک مسلسل بڑھتی ہے اور 9 دن کی اسٹاک سست لائن 50 سے نیچے ہے تو ، یہ تیزی ہے۔ جب قیمت 2 دن تک مسلسل گرتی ہے اور 9 دن کی اسٹاک فاسٹ لائن 50 سے اوپر ہے تو ، یہ bearish ہے۔
کنفیلوئنس اشارے کی حکمت عملی میں رجحان کی سمت اور طاقت کا تعین کرنے کے لئے مختلف سائیکلوں کے چلتے ہوئے اوسط اور آسکیلیٹرز کی سپر پوزیشن کا استعمال کیا جاتا ہے۔ اس میں لکیری وزن ، سینس کا اضافہ اور طویل اور مختصر رفتار کا جامع اندازہ لگانے کے لئے دیگر طریقے شامل ہیں۔ اشارے کو گریڈ کیا جاتا ہے اور 1 سے 9 تک واپس آتا ہے جس سے مضبوط تیزی کی رفتار اور -1 سے -9 تک مضبوط برداشت کی رفتار کی نشاندہی ہوتی ہے۔
آخر میں، حکمت عملی طویل یا مختصر پوزیشنوں کو قائم کرتی ہے جب دونوں سگنل مستقل ہوتے ہیں.
ملٹی فیکٹر ماڈل پر مبنی لمحے کی الٹ پلٹ کی حکمت عملی میں الٹ پلٹ کے عوامل اور رفتار کے عوامل کو یکجا کیا گیا ہے تاکہ غلط بریک آؤٹ سے بچنے کے لئے رجحان کی پیروی کرتے ہوئے الٹ پلٹ کے مواقع کو حاصل کیا جاسکے ، اس طرح جیت کی شرح زیادہ ہے۔ حکمت عملی کے فوائد خاص طور پر اس میں جھلکتے ہیں:
123 واپسی کی حکمت عملی ایک واپسی سگنل ذریعہ کے طور پر، مختصر مدت کی واپسی سے اضافی منافع کو پکڑ سکتا ہے.
کنفلوئنس اشارے بہت بڑی الٹ کی جگہ کی وجہ سے نقصان کے خطرے سے بچنے کے لئے رجحان کی سمت اور طاقت کا اندازہ لگاتا ہے.
دونوں حکمت عملیوں کا امتزاج ایک دوسرے کی طاقتوں اور کمزوریوں کو کسی حد تک مکمل کرتا ہے اور سگنل کے معیار کو بہتر بناتا ہے۔
ایک واحد ماڈل کے مقابلے میں ، متعدد عوامل کا امتزاج حکمت عملیوں کے استحکام کو بہتر بنا سکتا ہے۔
اگرچہ ملٹی فیکٹر ماڈل پر مبنی لمحہ الٹ کرنے کی حکمت عملی میں کچھ فوائد ہیں ، پھر بھی کچھ خطرات موجود ہیں:
واپسی مکمل نہ ہونے اور قیمتوں میں ایک بار پھر تبدیل ہونے کی وجہ سے ہونے والے نقصان کا خطرہ۔ اس کے خلاف حفاظت کے لئے مناسب اسٹاپ نقصان مقرر کیا جاسکتا ہے۔
جب دو سگنل متضاد ہوں تو سمت کا تعین کرنے میں ناکام۔ مماثلت کی ڈگری بڑھانے کے لئے پیرامیٹر ایڈجسٹمنٹ کی جاسکتی ہے۔
ماڈل بہت زیادہ پیچیدہ ہے، بہت سے پیرامیٹرز کے ساتھ، جو ایڈجسٹ کرنے اور بہتر بنانے کے لئے مشکل ہے.
متعدد ذیلی ماڈلوں کی بیک وقت نگرانی کرنے کی ضرورت ہے ، جس کے نتیجے میں آپریشن میں دشواری اور نفسیاتی دباؤ میں اضافہ ہوتا ہے۔ آپریشنل بوجھ کو کم کرنے کے لئے خودکار ٹریڈنگ عناصر متعارف کروائے جاسکتے ہیں۔
ملٹی فیکٹر ماڈل پر مبنی لمحے کی واپسی کی حکمت عملی کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جاسکتا ہے:
123 ریورسنگ حکمت عملی کے پیرامیٹرز کو ایڈجسٹ کریں تاکہ ریورسنگ سگنل زیادہ درست اور قابل اعتماد ہوں۔
کنفلوئنس اشارے کے پیرامیٹرز کو ایڈجسٹ کریں تاکہ مقررہ رجحانات کو اصل رجحانات سے قریب تر بنایا جاسکے۔
خودکار طور پر پیرامیٹر کے مجموعے کو بہتر بنانے کے لئے مشین لرننگ الگورتھم متعارف کروائیں۔
پوزیشن ایڈجسٹمنٹ کو زیادہ مقداری اور منظم بنانے کے لئے پوزیشن مینجمنٹ ماڈیول شامل کریں.
سٹاپ نقصان ماڈیول شامل کریں. سٹاپ نقصان کی قیمت پہلے سے مقرر کی طرف سے مؤثر طریقے سے واحد نقصان کو کنٹرول.
ملٹی فیکٹر ماڈل پر مبنی لمحہ الٹ کرنے کی حکمت عملی میں الٹ کرنے کے عوامل اور رفتار کے عوامل کو جامع طور پر استعمال کیا جاتا ہے۔ نسبتا high اعلی سگنل کے معیار کو یقینی بنانے کی بنیاد پر ، یہ ملٹی فیکٹر اسٹیکنگ کے ذریعہ جیت کی شرح کو زیادہ حاصل کرتا ہے۔ اس حکمت عملی میں الٹ جانے کے مواقع کو حاصل کرنے اور رجحان کی پیروی کرنے کے دوہرے فوائد ہیں۔ یہ ایک موثر اور مستحکم مقداری حکمت عملی ہے۔ حکمت عملی کے خطرے کے ثواب کے تناسب کو مزید بہتر بنانے کے لئے پیرامیٹر ایڈجسٹمنٹ اور رسک کنٹرول جیسے پہلوؤں میں فالو اپ اصلاحات کی جاسکتی ہیں۔
/*backtest start: 2023-11-20 00:00:00 end: 2023-12-07 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 11/11/2019 // This is combo strategies for get a cumulative signal. // // First strategy // This System was created from the Book "How I Tripled My Money In The // Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies. // The strategy buys at market, if close price is higher than the previous close // during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. // The strategy sells at market, if close price is lower than the previous close price // during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50. // // Second strategy // This is modified version of Dale Legan's "Confluence" indicator written by Gary Fritz. // ================================================================ // Here is Gary`s commentary: // Since the Confluence indicator returned several "states" (bull, bear, grey, and zero), // he modified the return value a bit: // -9 to -1 = Bearish // -0.9 to 0.9 = "grey" (and zero) // 1 to 9 = Bullish // The "grey" range corresponds to the "grey" values plotted by Dale's indicator, but // they're divided by 10. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// Reversal123(Length, KSmoothing, DLength, Level) => vFast = sma(stoch(close, high, low, Length), KSmoothing) vSlow = sma(vFast, DLength) pos = 0.0 pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1, iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) pos Confluence(Harmonic, BuyBand, SellBand) => pos = 0.0 Price = close STL = round((Harmonic * 2) - 1 - 0.5) ITL = round((STL * 2) - 1 - 0.5) LTL = round((ITL * 2) - 1 - 0.5) HOFF = round(Harmonic / 2 - 0.5) SOFF = round(STL / 2 - 0.5) IOFF = round(ITL / 2 - 0.5) xHavg = sma(Price, Harmonic) xSavg = sma(Price, STL) xIavg = sma(Price, ITL) xLavg = sma(Price, LTL) xvalue2 = xSavg - xHavg[HOFF] xvalue3 = xIavg - xSavg[SOFF] xvalue12 = xLavg - xIavg[IOFF] xmomsig = xvalue2 + xvalue3 + xvalue12 xLavgOHLC = sma(ohlc4, LTL - 1) xH2 = sma(Price, Harmonic - 1) xS2 = sma(Price, STL - 1) xI2 = sma(Price, ITL - 1) xL2 = sma(Price, LTL - 1) DerivH = (xHavg * 2) - xHavg[1] DerivS = (xSavg * 2) - xSavg[1] DerivI = (xIavg * 2) - xIavg[1] DerivL = (xLavg * 2) - xLavg[1] SumDH = Harmonic * DerivH SumDS = STL * DerivS SumDI = ITL * DerivI SumDL = LTL * DerivL LengH = Harmonic - 1 LengS = STL - 1 LengI = ITL - 1 LengL = LTL - 1 N1H = xH2 * LengH N1S = xS2 * LengS N1I = xI2 * LengI N1L = xL2 * LengL DRH = SumDH - N1H DRS = SumDS - N1S DRI = SumDI - N1I DRL = SumDL - N1L SumH = xH2 * (Harmonic - 1) SumS = xS2 * (STL - 1) SumI = xI2 * (ITL - 1) SumL = xLavgOHLC * (LTL - 1) xvalue5 = (SumH + DRH) / Harmonic xvalue6 = (SumS + DRS) / STL xvalue7 = (SumI + DRI) / ITL xvalue13 = (SumL + DRL) / LTL value9 = xvalue6 - xvalue5[HOFF] value10 = xvalue7 - xvalue6[SOFF] value14 = xvalue13 - xvalue7[IOFF] xmom = value9 + value10 + value14 HT = sin(xvalue5 * 2 * 3.14 / 360) + cos(xvalue5 * 2 * 3.14 / 360) HTA = sin(xHavg * 2 * 3.14 / 360) + cos(xHavg * 2 * 3.14 / 360) ST = sin(xvalue6 * 2 * 3.14 / 360) + cos(xvalue6 * 2 * 3.14 / 360) STA = sin(xSavg * 2 * 3.14 / 360) + cos(xSavg * 2 * 3.14 / 360) IT = sin(xvalue7 * 2 * 3.14 / 360) + cos(xvalue7 * 2 * 3.14 / 360) ITA = sin(xIavg * 2 * 3.14 / 360) + cos(xIavg * 2 * 3.14 / 360) xSum = HT + ST + IT xErr = HTA + STA + ITA Condition2 = (((xSum > xSum[SOFF]) and (xHavg < xHavg[SOFF])) or ((xSum < xSum[SOFF]) and (xHavg > xHavg[SOFF]))) Phase = iff(Condition2 , -1 , 1) xErrSum = (xSum - xErr) * Phase xErrSig = sma(xErrSum, SOFF) xvalue70 = xvalue5 - xvalue13 xvalue71 = sma(xvalue70, Harmonic) ErrNum = iff (xErrSum > 0 and xErrSum < xErrSum[1] and xErrSum < xErrSig, 1, iff (xErrSum > 0 and xErrSum < xErrSum[1] and xErrSum > xErrSig, 2, iff (xErrSum > 0 and xErrSum > xErrSum[1] and xErrSum < xErrSig, 2, iff (xErrSum > 0 and xErrSum > xErrSum[1] and xErrSum > xErrSig, 3, iff (xErrSum < 0 and xErrSum > xErrSum[1] and xErrSum > xErrSig, -1, iff (xErrSum < 0 and xErrSum < xErrSum[1] and xErrSum > xErrSig, -2, iff (xErrSum < 0 and xErrSum > xErrSum[1] and xErrSum < xErrSig, -2, iff (xErrSum < 0 and xErrSum < xErrSum[1] and xErrSum < xErrSig, -3, 0)))))))) momNum = iff (xmom > 0 and xmom < xmom[1] and xmom < xmomsig , 1, iff (xmom > 0 and xmom < xmom[1] and xmom > xmomsig, 2, iff (xmom > 0 and xmom > xmom[1] and xmom < xmomsig, 2, iff (xmom > 0 and xmom > xmom[1] and xmom > xmomsig, 3, iff (xmom < 0 and xmom > xmom[1] and xmom > xmomsig, -1, iff (xmom < 0 and xmom < xmom[1] and xmom > xmomsig, -2, iff (xmom < 0 and xmom > xmom[1] and xmom < xmomsig, -2, iff (xmom < 0 and xmom < xmom[1] and xmom < xmomsig, -3, 0)))))))) TCNum = iff (xvalue70 > 0 and xvalue70 < xvalue70[1] and xvalue70 < xvalue71, 1, iff (xvalue70 > 0 and xvalue70 < xvalue70[1] and xvalue70 > xvalue71, 2, iff (xvalue70 > 0 and xvalue70 > xvalue70[1] and xvalue70 < xvalue71, 2, iff (xvalue70 > 0 and xvalue70 > xvalue70[1] and xvalue70 > xvalue71, 3, iff (xvalue70 < 0 and xvalue70 > xvalue70[1] and xvalue70 > xvalue71, -1, iff (xvalue70 < 0 and xvalue70 < xvalue70[1] and xvalue70 > xvalue71, -2, iff (xvalue70 < 0 and xvalue70 > xvalue70[1] and xvalue70 < xvalue71, -2, iff (xvalue70 < 0 and xvalue70 < xvalue70[1] and xvalue70 < xvalue71, -3,0)))))))) value42 = ErrNum + momNum + TCNum Confluence = iff (value42 > 0 and xvalue70 > 0, value42, iff (value42 < 0 and xvalue70 < 0, value42, iff ((value42 > 0 and xvalue70 < 0) or (value42 < 0 and xvalue70 > 0), value42 / 10, 0))) Res1 = iff (Confluence >= 1, Confluence, 0) Res2 = iff (Confluence <= -1, Confluence, 0) Res3 = iff (Confluence == 0, 0, iff (Confluence > -1 and Confluence < 1, 10 * Confluence, 0)) pos := iff(Res2 >= SellBand and Res2 != 0, -1, iff(Res1 <= BuyBand and Res1 != 0, 1, iff(Res3 != 0, 2, nz(pos[1], 0)))) pos strategy(title="Combo Backtest 123 Reversal & Confluence", shorttitle="Combo", overlay = true) Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- Harmonic = input(10, minval=1) BuyBand = input(9) SellBand = input(-9) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posConfluence = Confluence(Harmonic, BuyBand, SellBand) pos = iff(posReversal123 == 1 and posConfluence == 1 , 1, iff(posReversal123 == -1 and posConfluence == -1, -1, 0)) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1 , 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) if (possig == 0) strategy.close_all() barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )