یہ حکمت عملی تجارتی سگنل پیدا کرنے کے لئے 20 دن کی حرکت پذیر اوسط اور 60 دن کی حرکت پذیر اوسط کے کراس اوور کو اپناتی ہے۔ جب قیمت 20 دن کی ایم اے سے اوپر ہوتی ہے تو یہ طویل ہوجاتی ہے اور جب قیمت 20 دن کی ایم اے سے نیچے ہوتی ہے تو پوزیشن بند ہوجاتی ہے۔ اسی طرح ، جب قیمت 60 دن کی ایم اے کو عبور کرتی ہے تو یہ تجارتی سگنل بناتی ہے۔ یہ حکمت عملی ایک عام رجحان کے بعد نظام سے تعلق رکھتی ہے۔
مندرجہ بالا قوانین اس حکمت عملی کے لئے تجارتی سگنل اور منطق کی وضاحت کرتے ہیں۔ جب قیمت ایم اے لائن سے تجاوز کرتی ہے تو ، اس سے پتہ چلتا ہے کہ ایک نیا رجحان ابھر رہا ہے اور ہم طویل عرصے تک جانے کے رجحان کی پیروی کرسکتے ہیں۔ جب قیمت ایم اے لائن سے نیچے آجاتی ہے تو ، اس سے پتہ چلتا ہے کہ رجحان ختم ہو رہا ہے لہذا ہم پوزیشن بند کرتے ہیں۔
خطرے کے حل:
یہ ایک عام دوہری حرکت پذیر اوسط کراس اوور حکمت عملی ہے۔ بنیادی خیال یہ ہے کہ جب قیمت ایم اے لائن سے تجاوز کرتی ہے تو پوزیشن قائم کرکے رجحانات کی پیروی کریں۔ حکمت عملی کو نافذ کرنا آسان اور عملی ہے۔ اس دوران ، بہتر نتائج حاصل کرنے کے لئے پیرامیٹر ٹیوننگ ، اسٹاپ نقصان ، پوزیشن سائزنگ وغیرہ کے ذریعہ مزید اصلاحات کی گنجائش ہے۔
/*backtest start: 2022-12-01 00:00:00 end: 2023-12-07 00:00:00 period: 1d basePeriod: 1h 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/ // © Astorhsu //@version=5 strategy("Astor SMA20/60 TW", overlay=true, margin_long=100, margin_short=100) backtest_year = input(2018, title='backtest_year') //回測開始年分 backtest_month = input.int(01, title='backtest_month', minval=1, maxval=12) //回測開始月份 backtest_day = input.int(01, title='backtest_day', minval=1, maxval=31) //回測開始日期 start_time = timestamp(backtest_year, backtest_month, backtest_day, 00, 00) //回測開始的時間函數 //Indicators sma20 = ta.sma(close,20) sma60 = ta.sma(close,60) plot(sma20, color=color.green, title="sma(20)") plot(sma60, color=color.red, title="sma(60)") //進場條件 longCondition = ta.crossover(close, ta.sma(close, 20)) if (longCondition) and time >= start_time strategy.entry("open long20", strategy.long, qty=1, comment="站上m20做多") shortCondition = ta.crossunder(close, ta.sma(close, 20)) if (shortCondition) and time >= start_time strategy.close("open long20",comment="跌破m20平倉", qty=1) longCondition1 = ta.crossover(close, ta.sma(close, 60)) if (longCondition1) and time >= start_time strategy.entry("open long60", strategy.long, qty=1, comment="站上m60做多") shortCondition1 = ta.crossunder(close, ta.sma(close, 60)) if (shortCondition1) and time >= start_time strategy.close("open long60",comment="跌破m60平倉", qty=1)