یہ حکمت عملی متعدد حرکت پذیر اوسط لائنوں کی توڑ اور کال بیک پر مبنی تجارتی سگنل تیار کرتی ہے۔ جب قیمت اوپر کی حرکت پذیر اوسط لائن کو توڑتی ہے تو یہ طویل ہوجاتی ہے اور جب قیمت نیچے کی حرکت پذیر اوسط لائن سے نیچے آجاتی ہے تو مختصر ہوجاتی ہے۔
کوڈ مختلف ادوار کے ساتھ 4 حرکت پذیر اوسط لائنوں کا استعمال کرتا ہے - 21 دن ، 50 دن ، 100 دن اور 200 دن۔ جب قیمت ان ایم اے لائنوں کو توڑتی ہے تو یہ طویل پوزیشنوں میں داخل ہوتا ہے اور جب قیمت ان ایم اے لائنوں سے نیچے آجاتی ہے تو مختصر پوزیشنوں میں داخل ہوتا ہے۔ اس کے علاوہ ، حکمت عملی میں اسٹاپ نقصان اور منافع کی سطح مقرر کی جاتی ہے۔ خاص طور پر ، اسٹاپ نقصان پچھلی موم بتی کے سب سے کم نقطہ کے قریب طے ہوتا ہے ، اور منافع حاصل کرنا پچھلی موم بتی کے سب سے کم نقطہ اور سب سے زیادہ نقطہ کے درمیان فاصلے کے 3 گنا مقرر ہوتا ہے۔
اس حکمت عملی کا بنیادی خیال یہ ہے کہ چلتی اوسطوں کا استعمال کرتے ہوئے رجحان کا فیصلہ کیا جائے۔ جب قیمت اوپر کی ایم اے لائنوں سے ٹوٹ جاتی ہے تو ، اس سے یہ ظاہر ہوتا ہے کہ یہ بڑھتی ہوئی رجحان ہے لہذا اسے لمبا ہونا چاہئے۔ جب قیمت نیچے کی ایم اے لائنوں سے نیچے آجاتی ہے تو ، یہ نیچے کی رجحان کی نشاندہی کرتی ہے لہذا اسے مختصر ہونا چاہئے۔ مختلف ادوار کے ساتھ متعدد ایم اے لائنوں کا استعمال کرتے ہوئے رجحان کو زیادہ درست طریقے سے فیصلہ کیا جاسکتا ہے اور رجحان کی مستقل مزاجی کے ذریعے تجارتی سگنل کی تصدیق بھی کی جاسکتی ہے۔
اس حکمت عملی کے اہم فوائد یہ ہیں:
اس حکمت عملی کے اہم خطرات یہ ہیں:
یہ خطرات ایم اے پیرامیٹرز کو ایڈجسٹ کرکے اور اسٹاپ نقصان اور منافع لینے کو بہتر بنا کر کم کیے جا سکتے ہیں۔
اس حکمت عملی کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جاسکتا ہے:
عام طور پر ، یہ حکمت عملی کے بعد ایک عام رجحان ہے۔ فوائد واضح منطق اور سمجھنے اور لاگو کرنے میں آسان ہیں۔ نقصان یہ ہے کہ غلط سگنل کا شکار ہے۔ پیرامیٹر ٹوننگ اور دیگر اشارے شامل کرکے حکمت عملی کو بہتر بنایا جاسکتا ہے۔ یہ درمیانی سے طویل مدتی ہولڈنگ کے لئے موزوں ہے اور اسے قلیل مدتی تجارتی حکمت عملیوں کے جزو کے طور پر بھی استعمال کیا جاسکتا ہے۔
/*backtest start: 2022-11-15 00:00:00 end: 2023-11-21 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("DolarBasar by AlperDursun", shorttitle="DOLARBASAR", overlay=true) // Input for Moving Averages ma21 = ta.sma(close, 21) ma50 = ta.sma(close, 50) ma100 = ta.sma(close, 100) ma200 = ta.sma(close, 200) // Calculate the lowest point of the previous candle for stop loss lowestLow = ta.lowest(low, 2) // Calculate the highest point of the previous candle for stop loss highestHigh = ta.highest(high, 2) // Calculate take profit levels takeProfitLong = lowestLow - 3 * (lowestLow - highestHigh) takeProfitShort = highestHigh + 3 * (lowestLow - highestHigh) // Entry Conditions longCondition = ta.crossover(close, ma21) or ta.crossover(close, ma50) or ta.crossover(close, ma100) or ta.crossover(close, ma200) shortCondition = ta.crossunder(close, ma21) or ta.crossunder(close, ma50) or ta.crossunder(close, ma100) or ta.crossunder(close, ma200) // Stop Loss Levels stopLossLong = lowestLow * 0.995 stopLossShort = highestHigh * 1.005 // Exit Conditions longExitCondition = low < stopLossLong or high > takeProfitLong shortExitCondition = high > stopLossShort or low < takeProfitShort if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) if (longExitCondition) strategy.exit("Long Exit", from_entry="Long", stop=stopLossLong, limit=takeProfitLong) if (shortExitCondition) strategy.exit("Short Exit", from_entry="Short", stop=stopLossShort, limit=takeProfitShort)