
یہ حکمت عملی ایک خودکار تجارتی نظام ہے جو سادہ حرکت پذیر اوسط ((SMA) کراسنگ پر مبنی ہے ، جس میں متحرک اسٹاپ اور اسٹاپ نقصان کا طریقہ کار شامل ہے۔ یہ دو مختلف دورانیہ والے SMA کا استعمال کرتا ہے ، ان کے کراسنگ سے خرید اور فروخت کے سگنل پیدا ہوتے ہیں۔ اس کے علاوہ ، حکمت عملی میں خطرہ کو کنٹرول کرنے اور منافع کو مقفل کرنے کے لئے فیصد پر مبنی اسٹاپ اور اسٹاپ نقصان کی سطح بھی رکھی گئی ہے۔
یہ دوہری مساوی کراسنگ پر مبنی تجارتی حکمت عملی ایک آسان اور موثر فریم ورک مہیا کرتی ہے جو ابتدائیوں کے لئے خود کار طریقے سے تجارت شروع کرنے کے لئے موزوں ہے۔ اس میں رجحانات کی پیروی اور خطرے کے انتظام کے عناصر کو یکجا کیا گیا ہے تاکہ اسٹاپ نقصان کو متحرک طور پر ترتیب دے کر فنڈز کی حفاظت کی جاسکے۔ تاہم ، عملی تجارت میں بہتر نتائج کے ل further ، مزید اصلاح اور بہتری کی ضرورت ہے۔ فلٹر کے طور پر مزید تکنیکی اشارے شامل کرنے ، اسٹاپ نقصان کی ترتیب کو بہتر بنانے کے طریقوں کو بہتر بنانے اور پوزیشن مینجمنٹ کی زیادہ پیچیدہ حکمت عملی متعارف کرانے پر غور کیا جاسکتا ہے۔
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Pubgentleman
//@version=5
//@version=5
strategy("TSLA 1-Hour SMA Crossover Strategy with Buy/Sell Signals", overlay=true)
// Parameters
shortSmaLength = input.int(50, title="Short SMA Length")
longSmaLength = input.int(100, title="Long SMA Length")
takeProfitPerc = input.float(5.0, title="Take Profit Percentage", step=0.1) // 5.0% take profit
stopLossPerc = input.float(3.0, title="Stop Loss Percentage", step=0.1) // 3.0% stop loss
// Calculate SMAs
shortSma = ta.sma(close, shortSmaLength)
longSma = ta.sma(close, longSmaLength)
// Plot SMAs
plot(shortSma, color=color.blue, title="Short SMA")
plot(longSma, color=color.red, title="Long SMA")
// Entry Conditions
longCondition = ta.crossover(shortSma, longSma)
shortCondition = ta.crossunder(shortSma, longSma)
// Trade Management
var float entryPrice = na
var float takeProfitLevel = na
var float stopLossLevel = na
if (longCondition)
entryPrice := close
takeProfitLevel := entryPrice * (1 + takeProfitPerc / 100)
stopLossLevel := entryPrice * (1 - stopLossPerc / 100)
strategy.entry("Long", strategy.long)
label.new(x=bar_index, y=low, text="Buy", style=label.style_label_up, color=color.green, textcolor=color.white)
if (shortCondition)
entryPrice := close
takeProfitLevel := entryPrice * (1 - takeProfitPerc / 100)
stopLossLevel := entryPrice * (1 + stopLossPerc / 100)
strategy.entry("Short", strategy.short)
label.new(x=bar_index, y=high, text="Sell", style=label.style_label_down, color=color.red, textcolor=color.white)
// Exit Conditions
if (strategy.position_size > 0)
if (close >= takeProfitLevel or close <= stopLossLevel)
strategy.close("Long")
if (strategy.position_size < 0)
if (close <= takeProfitLevel or close >= stopLossLevel)
strategy.close("Short")
// Plot Take Profit and Stop Loss Levels
plot(strategy.position_size > 0 ? takeProfitLevel : na, title="Take Profit Level", color=color.green, style=plot.style_stepline)
plot(strategy.position_size > 0 ? stopLossLevel : na, title="Stop Loss Level", color=color.red, style=plot.style_stepline)
plot(strategy.position_size < 0 ? takeProfitLevel : na, title="Take Profit Level (Short)", color=color.green, style=plot.style_stepline)
plot(strategy.position_size < 0 ? stopLossLevel : na, title="Stop Loss Level (Short)", color=color.red, style=plot.style_stepline)