یہ حکمت عملی تجارتی سگنل پیدا کرنے کے لئے دو حرکت پذیر اوسط (ایم اے) کا استعمال کرتی ہے۔ جب مختصر مدت کے ایم اے طویل مدت کے ایم اے سے تجاوز کرتے ہیں تو ، ایک خرید سگنل تیار کیا جاتا ہے۔ جب مختصر مدت کے ایم اے طویل مدت کے ایم اے سے تجاوز کرتے ہیں تو ، ایک فروخت سگنل تیار کیا جاتا ہے۔ حکمت عملی میں تجارتی وقت کی مدت (8 AM سے 20 PM UTC) اور منافع کا ہدف (150 پوائنٹس) بھی طے ہوتا ہے۔
یہ حکمت عملی مختلف ادوار کے ساتھ دو حرکت پذیر اوسط کے کراس اوور کی بنیاد پر تجارتی سگنل تیار کرتی ہے ، جو رجحان سازی کی منڈیوں کے لئے موزوں ہے۔ تجارتی وقت کی مدت اور مقررہ منافع کا ہدف طے کرکے ، یہ کسی حد تک خطرے کو کنٹرول کرسکتا ہے۔ تاہم ، یہ حکمت عملی ہچکچاہٹ والی منڈیوں میں اچھی کارکردگی کا مظاہرہ نہیں کرسکتی ہے ، اور مقررہ منافع کا ہدف حکمت عملی کی منافع کی صلاحیت کو محدود کرسکتا ہے۔ مستقبل میں ، کسی کو زیادہ تکنیکی اشارے شامل کرنے ، منافع کے ہدف اور اسٹاپ نقصان کی ترتیب کو بہتر بنانے ، مارکیٹ مائکرو اسٹیکچر کی معلومات کو جوڑنے ، اور اس حکمت عملی کو بہتر بنانے کے لئے مختلف مارکیٹ ریاستوں کے لئے مختلف پیرامیٹر کی ترتیبات کو اپنانے پر غور کیا جاسکتا ہے۔
/*backtest start: 2024-03-01 00:00:00 end: 2024-03-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Moving Average Crossover Strategy", overlay=true) // User-defined moving average periods ma1Periods = input(5, title="First Moving Average Periods") ma2Periods = input(20, title="Second Moving Average Periods") // Calculate moving averages ma1 = sma(close, ma1Periods) ma2 = sma(close, ma2Periods) // Plot moving averages plot(ma1, color=color.red, linewidth=2, title="First Moving Average") plot(ma2, color=color.blue, linewidth=2, title="Second Moving Average") // Detect crossovers and crossunders bullishCross = crossover(ma1, ma2) bearishCross = crossunder(ma1, ma2) // Define trading hours (8 AM to 2 PM UTC) startHour = 8 endHour = 20 utcHour = hour(time, "UTC") isMarketOpen = true // Define profit target profitTarget = 150 // Check if the price has closed above/below the MA for the past 4 bars aboveMa = close[4] > ma1[4] and close[3] > ma1[3] and close[2] > ma1[2] and close[1] > ma1[1] belowMa = close[4] < ma1[4] and close[3] < ma1[3] and close[2] < ma1[2] and close[1] < ma1[1] // Create buy and sell signals if (bullishCross and isMarketOpen and aboveMa) strategy.entry("Buy", strategy.long) strategy.exit("Sell", "Buy", profit=profitTarget) if (bearishCross and isMarketOpen and belowMa) strategy.entry("Sell", strategy.short) strategy.exit("Cover", "Sell", profit=profitTarget) // Plot shapes on crossovers plotshape(series=bullishCross and isMarketOpen and aboveMa, location=location.belowbar, color=color.green, style=shape.labelup, text="Buy") plotshape(series=bearishCross and isMarketOpen and belowMa, location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell")