یہ حکمت عملی 123 الٹ پیٹرن اور حرکت کی آسانی (ای او ایم) کو ٹرننگ پوائنٹس پر تجارت کرنے کے لئے جوڑتی ہے۔ 123 الٹ پیٹرن سگنل تیار کرتا ہے جب قیمت لگاتار 3 دن میں مخصوص پیٹرن تشکیل دیتی ہے۔ ای او ایم حکمت عملی مارکیٹ کی رفتار کو اندازہ کرنے کے لئے قیمت اور حجم میں تبدیلیوں کا استعمال کرتی ہے۔ دونوں حکمت عملیوں کا امتزاج تکنیکی نمونوں کے ساتھ ساتھ رفتار کو بھی مدنظر رکھتا ہے ، جس سے تجارتی سگنل کی درستگی میں بہتری آتی ہے۔
اسٹریٹیجی میں دو اجزاء شامل ہیں:
جب EOM اور 123 سگنل لانگ سائیڈ پر سیدھے ہوجاتے ہیں تو یہ حکمت عملی لمبی ہوتی ہے ، اور جب سگنل شارٹ سائیڈ پر سیدھے ہوجاتے ہیں تو مختصر ہوجاتی ہے۔
اس حکمت عملی کے فوائد:
بہتر سگنل کی درستگی کے لئے قیمت کے نمونوں اور رفتار کو یکجا کرتا ہے
123 پیٹرن پکڑنے موڑ کے مقامات، EOM gauges رجحان رفتار، دو ایک دوسرے کی تکمیل
اسٹاک نے استحکام کے دوران وِپساؤ سے گریز کیا
سادہ اور لاگو کرنے میں آسان
مختلف مارکیٹ کے ماحول کے لئے حسب ضرورت پیرامیٹرز
جن خطرات پر غور کیا جانا چاہئے:
پیرامیٹرز کی ترتیبات پر بہت زیادہ انحصار، غلط ترتیبات سے زیادہ تجارت یا لاپتہ تجارت ہوسکتی ہے
بہت سے فلٹر بہت کم سگنل پیدا کر سکتے ہیں
EOM اتار چڑھاؤ کے لئے حساس ہے، جھوٹے سگنل پیدا کر سکتا ہے
لائیو کارکردگی backtest کے مقابلے میں کمزور، پوزیشن سائزنگ کنٹرول کرنے کی ضرورت ہے
صرف رجحان اسٹاک کے لئے موزوں ہے، نہ کہ مختلف مارکیٹوں کے لئے
اسٹریٹیجی کو بہتر بنایا جاسکتا ہے:
سگنلز کی تعدد اور معیار کو متوازن کرنے کے لئے پیرامیٹرز کو بہتر بنانا
ایک ہی تجارت کے نقصان کو کنٹرول کرنے کے لئے سٹاپ نقصان کا اضافہ
مخالف رجحان کی تجارت سے بچنے کے لئے رجحان فلٹر شامل کرنا
عدم استحکام پر مبنی پوزیشن سائزنگ کو شامل کرنا
پیرامیٹرز کو متحرک طور پر بہتر بنانے کے لئے مشین لرننگ کا استعمال
یہ حکمت عملی اعلی عملی قدر کے ل price قیمت کے نمونوں اور رفتار کو مربوط کرتی ہے۔ لیکن تجارتی تعدد ، نقصان پر قابو پانے اور انسداد رجحان کے خطرات کا انتظام کرنے کی ضرورت ہے۔ پیرامیٹرز ، اسٹاپ نقصان ، رجحان فلٹرنگ میں مزید بہتری استحکام اور منافع کو بڑھا سکتی ہے۔ منطق کوانٹ ٹریڈرز کے لئے واضح اور لاگو کرنا آسان ہے۔
/*backtest start: 2023-10-15 00:00:00 end: 2023-11-14 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 14/04/2020 // 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 indicator gauges the magnitude of price and volume movement. // The indicator returns both positive and negative values where a // positive value means the market has moved up from yesterday's value // and a negative value means the market has moved down. A large positive // or large negative value indicates a large move in price and/or lighter // volume. A small positive or small negative value indicates a small move // in price and/or heavier volume. // A positive or negative numeric value. A positive value means the market // has moved up from yesterday's value, whereas, a negative value means the // market has moved down. // // 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 EOM(BuyZone, SellZone) => pos = 0 xHigh = high xLow = low xVolume = volume xHalfRange = (xHigh - xLow) * 0.5 xMidpointMove = mom(xHalfRange, 1) xBoxRatio = iff((xHigh - xLow) != 0, xVolume / (xHigh - xLow), 0) nRes = iff(xBoxRatio != 0, 1000000 * ((xMidpointMove - xMidpointMove[1]) / xBoxRatio), 0) pos := iff(nRes > BuyZone, 1, iff(nRes < SellZone, -1, nz(pos[1], 0))) pos strategy(title="Combo Backtest 123 Reversal & Ease of Movement (EOM)", shorttitle="Combo", overlay = true) Length = input(14, minval=1) KSmoothing = input(1, minval=1) DLength = input(3, minval=1) Level = input(50, minval=1) //------------------------- BuyZone = input(4000, minval=1) SellZone = input(-4000) reverse = input(false, title="Trade reverse") posReversal123 = Reversal123(Length, KSmoothing, DLength, Level) posEOM = EOM(BuyZone, SellZone) pos = iff(posReversal123 == 1 and posEOM == 1 , 1, iff(posReversal123 == -1 and posEOM == -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 )