رجحان فلٹر چلتی اوسط کراس اوور مقداری حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-01 14:25:08
ٹیگز:

img

جائزہ

ٹرینڈ فلٹر موونگ ایوریج کراس اوور مقداری حکمت عملی ایک درمیانی سے طویل مدتی مقداری تجارتی حکمت عملی ہے۔ یہ تیز اور سست حرکت پذیر اوسط کے کراس اوور کے ذریعے مارکیٹ کی رجحان کی سمت کا تعین کرتی ہے ، اور ایک موثر رجحان کی نشاندہی کرنے کے پیش نظر مارکیٹ میں داخل ہوتی ہے۔ اسی وقت ، یہ حکمت عملی ایک طویل سائیکل حرکت پذیر اوسط کو بھی ٹرینڈ فلٹر کے طور پر طے کرتی ہے ، تاکہ جب قیمتیں اس حرکت پذیر اوسط کو توڑتی ہیں تو ہی درست تجارتی سگنل پیدا ہوسکتے ہیں۔

حکمت عملی منطق

یہ حکمت عملی بنیادی طور پر چلتی اوسط کراس اوور کے اصول پر مبنی ہے۔ خاص طور پر ، مختلف ادوار کے ساتھ دو چلتی اوسطوں کا حساب لگایا جاتا ہے ، عام طور پر 20 دن اور 50 دن کی لائنوں پر مقرر کیا جاتا ہے۔ جب 20 دن کی لائن نیچے سے اوپر کی طرف سے 50 دن کی لائن سے اوپر ٹوٹ جاتی ہے تو خرید کا اشارہ پیدا ہوتا ہے ، اور جب 20 دن کی لائن اوپر سے نیچے کی طرف سے 50 دن کی لائن کو توڑتی ہے تو فروخت کا اشارہ پیدا ہوتا ہے۔ ان آسان کراس اوور سگنلز کو درمیانے اور طویل مدتی میں بریکآؤٹس کو پکڑنے کے لئے سمجھا جاتا ہے۔

اس کے علاوہ ، حکمت عملی میں مجموعی رجحان بینچ مارک کے طور پر 200 دن کا چلتا ہوا اوسط بھی طے کیا گیا ہے۔ صرف اس وقت جب قیمت 200 دن کی لائن کو توڑتی ہے تو ، مذکورہ بالا سادہ کراس اوور سگنل کو درست سمجھا جاتا ہے۔ یہ حد سے محدود مارکیٹ میں بہت سارے غلط سگنل پیدا کرنے سے بچنے کے لئے رجحان فلٹرنگ کا طریقہ کار تشکیل دیتا ہے۔

فوائد کا تجزیہ

  1. درمیانی سے طویل مدتی تجارتی تعدد سے زیادہ تجارت سے بچنے، تجارتی اخراجات اور سکلیپج کے خطرات کو کم کرنے میں مدد ملتی ہے۔

  2. چلتی اوسط کراس اوور کا تعین واضح اور سمجھنے اور لاگو کرنے میں آسان ہے۔

  3. رجحان فلٹرنگ میکانزم زیادہ تر غلط سگنل کو فلٹر کر سکتا ہے اور جیت کی شرح کو بہتر بنا سکتا ہے۔

  4. متحرک اوسط پیرامیٹرز کی لچکدار ایڈجسٹمنٹ مختلف اقسام اور وقت کے دوروں پر لاگو ہوتی ہے۔

  5. سٹاپ نقصان اور منافع لے سکتے ہیں ایک منافع اور نقصان کو کنٹرول کرنے کے لئے مقرر کیا جا سکتا.

خطرے کا تجزیہ

  1. جب قیمت چلتی اوسط کے ارد گرد گھومتی ہے تو ، متعدد غلط سگنل پیدا ہوسکتے ہیں جس کے نتیجے میں زیادہ تجارت ہوتی ہے۔

  2. طویل دورانیے کے چلنے والے اوسط مارکیٹ سے پیچھے رہ سکتے ہیں ، اس طرح رجحان کی تبدیلی کے مقامات کو یاد کرتے ہیں۔

  3. چلتی اوسط بینچ مارک قائم کرنے کے لئے نسبتا long طویل تاریخی اعداد و شمار کی ضرورت ہوتی ہے ، جس سے نئی اقسام یا مختصر سائیکل قابل اطلاق نہیں ہوتے ہیں۔

  4. حکمت عملی کے پیرامیٹرز کو بار بار جانچ اور اصلاح کی ضرورت ہوتی ہے ، غلط ترتیبات حکمت عملی کی ناکامی کا سبب بن سکتی ہیں۔

خطرے کو کم کرنا:

  1. طویل دورانیے کے چلتے ہوئے اوسط کو اپنانا، یا رجحان فلٹرنگ کے حالات کو بڑھانا۔

  2. اہم رجحان کا تعین کرنے کے لیے دیگر اشارے شامل کریں، جیسے توانائی کے اشارے، اتار چڑھاؤ کے اشارے وغیرہ۔

  3. چلتی اوسط سائیکل پیرامیٹرز کی موافقت کو بہتر بنانا۔

  4. حکمت عملی کے پیرامیٹرز کو متحرک طور پر ایڈجسٹ کرنے کے لئے پیرامیٹر کی اصلاح اور فیڈ بیک میکانزم کو بڑھانا۔

حکمت عملی کی اصلاح

  1. مختلف قسم کے چلتے ہوئے اوسط کی کوشش کریں ، جیسے لکیری وزن والے چلتے ہوئے اوسط۔

  2. موافقت پذیر چلتی اوسط سائیکل کی فعالیت کو بڑھانا۔

  3. رجحانات کے مراحل کا تعین کرنے کے لئے اتار چڑھاؤ کے اشارے شامل کریں ، جس سے حرکت پذیر اوسط کراس اوورز کی موزونیت میں اضافہ ہوگا۔

  4. مشین لرننگ الگورتھم متعارف کرانے کے لئے خود کار طریقے سے حکمت عملی پیرامیٹرز کو بہتر بنانے کے لئے.

  5. منافع کے لئے اثاثوں کے مابین رابطوں کا استعمال کرتے ہوئے کثیر اثاثوں کے امتزاج کی حکمت عملیوں کا جائزہ لیں۔

خلاصہ

ٹرینڈ فلٹر موونگ ایوریج کراس اوور حکمت عملی مجموعی طور پر ایک آسان اور عملی درمیانی سے طویل مدتی مقداری حکمت عملی ہے۔ یہ چلتی اوسط کراس اوور کے ذریعہ درمیانی سے طویل مدتی رجحان کا تعین کرتی ہے ، اور پھر غلط سگنلز کو کم کرنے کے لئے ٹرینڈ فلٹرنگ کا استعمال کرتی ہے۔ اس حکمت عملی کا فائدہ یہ ہے کہ اسے سمجھنا اور نافذ کرنا آسان ہے ، جو مقداری تجارت کے ابتدائی افراد کے لئے موزوں ہے۔ بہتری کے ممکنہ شعبے چلتی اوسط کی اصلاح میں ہیں ، نیز دوسرے اشارے اور مشینی سیکھنے کے الگورتھم کے ساتھ انضمام میں ہیں۔ ایک بنیادی حکمت عملی کے طور پر ، یہ زیادہ جدید مقداری ثالثی الگورتھم کے لئے تجارتی سگنل فراہم کرسکتی ہے۔


/*backtest
start: 2023-11-23 00:00:00
end: 2023-11-30 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

////////////////////////////////////////////////////////////////////////////////
// Booz Strategy
// Developed for Godstime
// Version 1.1
// 11/28/2021
////////////////////////////////////////////////////////////////////////////////

//@version=4
strategy("Booz Strategy", "", true)

// ----------------------------- Inputs ------------------------------------- //
source_ma_type = input("EMA", "Source MA Type", options=["SMA", "EMA"])
source_ma_length = input(50, "Source MA Length")
fast_ma_length = input(20, "Fast MA Length")
slow_ma_length = input(50, "Slow MA Length")        
use_trend_filter = input(true, "Trend Filter")
trend_filter_ma_type = input("EMA", "Trend Filter MA Type", options=["SMA", "EMA"])
trend_filter_ma_length = input(200, "Trend Filter MA Period")
show_mas = input(true, "Show MAs")
swing_trading_mode = input(false, "Swing Trading")

// -------------------------- Calculations ---------------------------------- //
fast_ma = ema(close, fast_ma_length)
slow_ma = ema(close, slow_ma_length)
source_ma = source_ma_type == "EMA"? ema(close, source_ma_length): 
                                     sma(close, source_ma_length)
trend_filter_ma = trend_filter_ma_type == "EMA"? ema(close, trend_filter_ma_length): 
                                                 sma(close, trend_filter_ma_length)

// --------------------------- Conditions ----------------------------------- //
uptrend = not use_trend_filter or close > trend_filter_ma
buy_cond = crossover(fast_ma, slow_ma) and uptrend

downtrend = not use_trend_filter or close < trend_filter_ma
sell_cond = crossunder(fast_ma, slow_ma) and downtrend

// ---------------------------- Plotting ------------------------------------ //
bgcolor(use_trend_filter and downtrend? color.red: use_trend_filter? color.green: na)
plot(show_mas? fast_ma: na, "Fast MA", color.green)
plot(show_mas? slow_ma: na, "Slow MA", color.red)
plot(show_mas? source_ma: na, "Source MA", color.purple)
plot(show_mas? trend_filter_ma: na, "Trend Filter MA", color.blue)


// ---------------------------- Trading  ------------------------------------ //
// Inputs
sl_perc = input(1.0, "Stop Loss (in %)", group="Backtest Control")/100
tp_perc = input(1.0, "Take Profit (in %)", group="Backtest Control")/100
leverage = input(10, "Leverage", maxval=100, group="Backtest Control")
bt_start_time = input(timestamp("2021 01 01"), "Backtest Start Time", input.time, group="Backtest Control")
bt_end_time = input(timestamp("2021 12 31"), "Backtest End Time", input.time, group="Backtest Control")

// Trading Window
in_trading_window = true
trade_qty = 1

// Long Side
strategy.entry("Long Entry", strategy.long, trade_qty, when=buy_cond and in_trading_window)
long_tp = strategy.position_avg_price * (1 + tp_perc)
long_sl = strategy.position_avg_price * (1 - sl_perc)
if not swing_trading_mode
    strategy.exit("Long Exit", "Long Entry", limit=long_tp, stop=long_sl)

// Short Side
strategy.entry("Short Entry", strategy.short, trade_qty, when=sell_cond and in_trading_window)
short_tp = strategy.position_avg_price * (1 - tp_perc)
short_sl = strategy.position_avg_price * (1 + sl_perc)
if not swing_trading_mode
    strategy.exit("Short Exit", "Short Entry", limit=short_tp, stop=short_sl)

// End of trading window close
strategy.close_all(when=not in_trading_window)

مزید