یہ حکمت عملی تجارتی سگنل پیدا کرنے کے لئے تیزی سے چلنے والی اوسط (ای ایم اے) اور چلنے والی اوسط کنورجنس تغیر (ایم اے سی ڈی) کے اشارے کو یکجا کرتی ہے ، اور خطرات کو کنٹرول کرنے کے لئے ٹریلنگ اسٹاپ نقصان کو اپناتی ہے۔ یہ حکمت عملی رجحان سازی کی منڈیوں کے لئے موزوں ہے اور اس کا مقصد طویل مدتی ہولڈنگ کے لئے درمیانی مدتی رجحانات کی پیروی کرنا ہے۔
جب تیز رفتار ای ایم اے لائن سست ای ایم اے لائن سے اوپر عبور کرتی ہے اور ایم اے سی ڈی ہسٹوگرام bearish ہوجاتا ہے تو ، حکمت عملی لمبی ہوجاتی ہے۔ جب ایک لمبی پوزیشن موجود ہوتی ہے تو ، نیچے کی طرف ٹریلنگ اسٹاپ نقصان لائن طے ہوجاتی ہے۔ اگر قیمت ایک خاص فیصد تک اسٹاپ نقصان لائن سے نیچے آجاتی ہے تو ، لمبی پوزیشن کو روک دیا جائے گا۔
خاص طور پر ، یہ حکمت عملی تیز اور سست ای ایم اے کی تعمیر کے لئے 7 دن کے ای ایم اے اور 14 دن کے ای ایم اے کا استعمال کرتی ہے۔ ایم اے سی ڈی کی قیمت 26 دن کے ای ایم اے کو 12 دن کے ای ایم اے سے گھٹاتے ہوئے حاصل کی جاتی ہے ، اور سگنل لائن ایم اے سی ڈی کے 9 دن کے ای ایم اے کے ساتھ حاصل کی جاتی ہے۔ جب 7 دن کا ای ایم اے 14 دن کے ای ایم اے سے تجاوز کرتا ہے اور ایم اے سی ڈی کی قیمت سگنل لائن سے تجاوز کرتی ہے تو ، ایک لمبی پوزیشن کھولی جاتی ہے۔ پھر نیچے کی طرف ٹریلنگ اسٹاپ نقصان لائن طے کی جاتی ہے۔ اگر قیمت ایک خاص فیصد کی طرف سے اعلی سطح سے گرتی ہے تو ، لمبی پوزیشن کو روک دیا جائے گا۔
یہ حکمت عملی ای ایم اے اور ایم اے سی ڈی اشارے کو جوڑتی ہے ، جو غلط بریک آؤٹس کو مؤثر طریقے سے فلٹر کرسکتی ہے۔ ای ایم اے رجحان کی سمت کا فیصلہ کرتا ہے اور ایم اے سی ڈی انٹری پوائنٹس کا تعین کرتا ہے۔ دونوں کو جوڑنے سے سگنل کے معیار کو بہتر بناتے ہوئے تجارتی تعدد کو کم کیا جاسکتا ہے۔ ٹریلنگ اسٹاپ نقصان موجودہ منافع کی حفاظت کو زیادہ سے زیادہ کرسکتا ہے اور اہم منفی حرکتوں کے وقت بروقت نقصانات کو روک سکتا ہے۔
بیک ٹسٹ سے پتہ چلتا ہے کہ یہ حکمت عملی ریچھ کی منڈیوں میں بھی مناسب منافع پیدا کرسکتی ہے ، جس سے کچھ مضبوطی ظاہر ہوتی ہے۔ تجارتی تعدد زیادہ نہیں ہے ، درمیانے اور طویل مدتی ہولڈنگز کے لئے موزوں ہے۔ ای ایم اے مدت کے پیرامیٹرز کو رجحان کے مطابق رجحان کے مطابق ایڈجسٹ کیا جاسکتا ہے۔
یہ حکمت عملی بنیادی طور پر اشارے پر انحصار کرتی ہے ، جس میں پھانسی کا خطرہ ہوتا ہے۔ رینج سے وابستہ استحکام کے دوران ، ای ایم اے اور ایم اے سی ڈی بہت زیادہ غلط سگنل پیدا کرسکتے ہیں ، جس کی وجہ سے زیادہ تجارت اور نقصانات ہوتے ہیں۔ ٹریلنگ اسٹاپ نقصان صرف نیچے کی طرف توڑنے کے لئے کام کرتا ہے ، جو اوپر کی طرف توڑنے کے بعد تیز الٹ کو سنبھالنے کے قابل نہیں ہوتا ہے۔
ای ایم اے کی مدت کو مناسب طریقے سے بڑھانا جھوٹے سگنلز کو کم کرسکتا ہے۔ حجم یا اتار چڑھاؤ کے اشارے جیسے فلٹر سگنلز کے لئے دوسرے اشارے کو بھی جوڑ سکتا ہے۔ اس کے علاوہ ، اسٹاپ نقصان کا فیصد مارکیٹ کے حالات کی بنیاد پر ایڈجسٹ کیا جاسکتا ہے ، تاکہ اسٹاپ نقصان اور وِپسا خطرات کو متوازن کیا جاسکے۔
زیادہ موزوں پیرامیٹرز تلاش کرنے کے لئے مختلف ای ایم اے مدت کے مجموعے کا تجربہ کیا جاسکتا ہے۔
سگنل فلٹرنگ اور معیار کو بہتر بنانے کے لئے دیگر اشارے جیسے آر ایس آئی ، کے ڈی شامل کیے جاسکتے ہیں۔
سٹاپ نقصان کی فیصد کو متحرک ٹریلنگ اسٹاپ کے ساتھ مختلف مصنوعات کی بنیاد پر ایڈجسٹ کیا جاسکتا ہے۔
بریک آؤٹ ، پیٹرن کی شناخت اور دیگر تکنیکوں کو زیادہ حسب ضرورت اندراج اور باہر نکلنے کے قواعد کے لئے شامل کیا جاسکتا ہے۔
مشین لرننگ ای ایم اے کی مدد کے لئے مجموعی رجحان کی سمت کی پیش گوئی میں مدد دے سکتی ہے۔
مجموعی طور پر یہ حکمت عملی کافی مضبوط ہے ، یہاں تک کہ ریچھ کی منڈیوں میں بھی مناسب منافع پیدا کرتی ہے۔ لیکن کچھ وِپسا خطرات موجود ہیں ، جن کے لئے پیرامیٹر ٹوننگ اور سگنل فلٹرنگ کی ضرورت ہوتی ہے۔ دوسرے تکنیکی اشارے اور مشین لرننگ کے ساتھ مزید اصلاحات اس میں نمایاں طور پر بہتری لاسکتی ہیں۔ خلاصہ یہ ہے کہ ، یہ حکمت عملی مقداری تجارت کے لئے ایک قابل اعتماد ٹیمپلیٹ فراہم کرتی ہے۔
/*backtest start: 2023-09-12 00:00:00 end: 2023-09-19 00:00:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © Coinrule //@version=5 strategy('EMA and MACD with Trailing Stop Loss', overlay=true, initial_capital=1000, process_orders_on_close=true, default_qty_type=strategy.percent_of_equity, default_qty_value=30, commission_type=strategy.commission.percent, commission_value=0.1) showDate = input(defval=true, title='Show Date Range') timePeriod = time >= timestamp(syminfo.timezone, 2022, 1, 1, 0, 0) notInTrade = strategy.position_size <= 0 // EMAs fastEMA = ta.ema(close, 7) slowEMA = ta.ema(close, 14) plot(fastEMA, color = color.blue) plot(slowEMA, color = color.green) //buyCondition1 = ta.crossover(fastEMA, slowEMA) buyCondition1 = fastEMA > slowEMA // DMI and MACD inputs and calculations [macd, macd_signal, macd_histogram] = ta.macd(close, 12, 26, 9) buyCondition2 = ta.crossover(macd_signal, macd) // Configure trail stop level with input options longTrailPerc = input.float(title='Trail Long Loss (%)', minval=0.0, step=0.1, defval=3) * 0.01 shortTrailPerc = input.float(title='Trail Short Loss (%)', minval=0.0, step=0.1, defval=1) * 0.01 // Determine trail stop loss prices longStopPrice = 0.0 shortStopPrice = 0.0 longStopPrice := if strategy.position_size > 0 stopValue = close * (1 - longTrailPerc) math.max(stopValue, longStopPrice[1]) else 0 shortStopPrice := if strategy.position_size < 0 stopValue = close * (1 + shortTrailPerc) math.min(stopValue, shortStopPrice[1]) else 999999 if (buyCondition1 and buyCondition2 and notInTrade and timePeriod) strategy.entry(id="Long", direction = strategy.long) strategy.exit(id="Exit", stop = longStopPrice, limit = shortStopPrice) //if (sellCondition1 and sellCondition2 and notInTrade and timePeriod) //strategy.close(id="Close", when = sellCondition1 or sellCondition2)