یہ حکمت عملی تیز رفتار اور سست رفتار اوسط کے مابین کراس اوور پر مبنی تجارتی سگنل تیار کرتی ہے۔ جب تیز رفتار اوسط نیچے سے سست رفتار اوسط سے تجاوز کرتا ہے تو یہ خرید سگنل تیار کرتا ہے۔ جب تیز رفتار اوسط اوپر سے سست رفتار اوسط سے تجاوز کرتا ہے تو یہ فروخت سگنل تیار کرتا ہے۔
یہ حکمت عملی تیز رفتار اور سست حرکت پذیر اوسطوں کا حساب لگانے کے لئے ایس ایم اے فنکشن کا استعمال کرتی ہے۔ فاسٹ_ایس ایم اے مدت کی لمبائی کے ساتھ تیز رفتار حرکت پذیر اوسط ہے. سست_ایس ایم اے مدت کی لمبائی کے ساتھ سست حرکت پذیر اوسط ہے.
یہ حکمت عملی تیز رفتار اور سست رفتار اوسط کے درمیان کراس اوور کا تعین کرنے کے لئے کراس اور کراس انڈر افعال کا استعمال کرتی ہے۔ جب تیز رفتار اوسط سست رفتار اوسط سے تجاوز کرتا ہے تو ، LONG متغیر سچ ہے اور خریدنے کا اشارہ پیدا ہوتا ہے۔ جب تیز رفتار اوسط سست رفتار اوسط سے نیچے عبور کرتا ہے تو ، SHORT متغیر سچ ہے اور فروخت کا اشارہ پیدا ہوتا ہے۔
اس حکمت عملی کے مندرجہ ذیل فوائد ہیں:
اس حکمت عملی میں مندرجہ ذیل خطرات بھی ہیں:
خطرے کا انتظام:
اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
یہ حکمت عملی مؤثر طریقے سے چلتی اوسط کے فوائد کا فائدہ اٹھاتے ہوئے تجارتی سگنل تیار کرتی ہے۔ اگرچہ کچھ خطرات موجود ہیں ، لیکن پیرامیٹر کی اصلاح ، فلٹرز وغیرہ شامل کرکے ان میں بہتری لائی جاسکتی ہے۔ چلتی اوسط کراس اوور حکمت عملی مزید تحقیق اور درخواست کے قابل ہے۔
/*backtest start: 2023-10-01 00:00:00 end: 2023-10-13 00:00:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@author Jacques Grobler // // SIMPLE CROSS OVER BOT // ===================== // // This is a simple example of how to set up a strategy to go long or short // If you make any modifications or have any suggestions, let me know // When using this script, every section marked back testing should be // uncommented in order to use for back testing, same goes for using the script portion /////////////////////////////////////////////////////////////////////////////////////// //// INTRO //// ----- // BACKTESTING //@version=4 strategy(title="SimpleCrossOver_Bot_V1_Backtester", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, pyramiding=0, commission_type=strategy.commission.percent, commission_value=0.1) // SIGNALS //study(title="SimpleCrossOver_Bot_V1_Signals", overlay = true) /////////////////////////////////////////////////////////////////////////////////////// //// INPUTS //// ------ // BACKTESTING dateSart_Year = input(2018, title="Start Year", minval=2000) dateSart_Month = input(1, title="Start Month", minval=1, maxval=12) dateSart_Day = input(1, title="Start Day", minval=1, maxval=31) dateEnd_Year = input(2019, title="End Year", minval=2000) dateEnd_Month = input(1, title="End Month", minval=1, maxval=12) dateEnd_Day = input(1, title="End Day", minval=1, maxval=31) // BACKTESTING AND SIGNALS fast_SMA_input = input(7, title="SMA Fast") slow_SMA_input = input(25, title="SMA Slow") /////////////////////////////////////////////////////////////////////////////////////// //// INDICATORS //// ---------- fast_SMA = sma(close, fast_SMA_input) slow_SMA = sma(close, slow_SMA_input) /////////////////////////////////////////////////////////////////////////////////////// //// STRATEGY //// -------- LONG = cross(fast_SMA, slow_SMA) and fast_SMA > slow_SMA stratLONG() => crossover(fast_SMA, slow_SMA) SHORT = cross(fast_SMA, slow_SMA) and fast_SMA < slow_SMA stratSHORT() => crossunder(fast_SMA, slow_SMA) /////////////////////////////////////////////////////////////////////////////////////// //// TRIGGERS //// -------- // BACKTESTING testPeriodStart = timestamp(dateSart_Year, dateSart_Month, dateSart_Day, 0, 0) testPeriodStop = timestamp(dateEnd_Year, dateEnd_Month, dateEnd_Day, 0, 0) timecondition = true strategy.entry(id="LONG", long = true, when=timecondition and stratLONG()) strategy.entry(id="SHORT", long = false, when=timecondition and stratSHORT()) // SIGNALS //alertcondition(LONG, title="LONG") //alertcondition(SHORT, title="SHORT") /////////////////////////////////////////////////////////////////////////////////////// //// PLOTS //// ----- // BACKTESTING AND SIGNALS plot(fast_SMA, color=green, linewidth=1) plot(slow_SMA, color=yellow, linewidth=1) plotshape(LONG, title="LONG", style=shape.triangleup, text="LONG", location=location.belowbar, size=size.small, color=green) plotshape(SHORT, title="SHORT", style=shape.triangledown, text="SHORT", location=location.abovebar, size=size.small, color=red)