وسائل لوڈ ہو رہے ہیں... لوڈنگ...

چلتی اوسط کراس اوور حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-11-22 16:38:26
ٹیگز:

img

جائزہ

چلتی اوسط کراس اوور حکمت عملی چلتی اوسط پر مبنی ایک آسان لیکن موثر مقداری تجارتی حکمت عملی ہے۔ یہ خرید اور فروخت کے سگنل پیدا کرنے کے لئے تیز رفتار چلتی اوسط لائن اور سست رفتار چلتی اوسط لائن کے کراس اوور کا استعمال کرتی ہے۔ جب تیز لائن نیچے سے سست لائن سے ٹوٹ جاتی ہے تو ، خرید کا اشارہ پیدا ہوتا ہے۔ جب تیز لائن اوپر سے سست لائن سے ٹوٹ جاتی ہے تو ، فروخت کا اشارہ پیدا ہوتا ہے۔

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

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

خاص طور پر ، یہ حکمت عملی پہلے تیز رفتار اوسط sig1 اور سست رفتار اوسط sig2 کی وضاحت کرتی ہے۔ پھر ، خرید و فروخت کے نکات کا تعین sig1 اور sig2 کے مابین کراس اوور تعلقات کے مطابق کیا جاتا ہے۔ جب sig1 نیچے سے sig2 کو توڑتا ہے تو ، ایک لمبی حالت longCondition تیار کی جاتی ہے۔ جب sig1 اوپر سے sig2 کو توڑتا ہے تو ، ایک مختصر حالت shortCondition تیار کی جاتی ہے۔ اس کے بعد حکمت عملی طویل اور مختصر شرائط کو پورا کرنے پر آرڈر دیتی ہے ، اور اسٹاپ نقصان اور منافع حاصل کرنے کے لئے آرڈر سے باہر نکلنے کے لئے سیٹ کرتی ہے۔

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

اس حکمت عملی کے فوائد اہم ہیں:

  1. سادہ منطق، سمجھنے اور لاگو کرنے کے لئے آسان
  2. لچکدار پیرامیٹر ٹیوننگ، مختلف مارکیٹ کے حالات کے تحت بہتر کیا جا سکتا ہے
  3. سگنل فلٹر کرنے اور استحکام کو بہتر بنانے کے لئے دیگر اشارے کے ساتھ مل کر کیا جا سکتا ہے
  4. اچھی کارکردگی، مثال کے طور پر EMA15-EMA30 کمبوڈ EURCHF روزانہ کے اعداد و شمار پر 83٪ جیت کی شرح حاصل کر سکتے ہیں

خطرے کا تجزیہ

اس حکمت عملی کے ساتھ کچھ خطرات بھی ہیں:

  1. شدید whipsaw اثرات، سٹاپ نقصان کی ترتیب اہم ہے
  2. رینجنگ، سائیڈ ویز مارکیٹوں میں خراب کارکردگی
  3. مختلف مصنوعات اور ٹائم فریم کے مطابق وسیع پیمانے پر جانچ اور پیرامیٹر ٹوننگ کی ضرورت ہوتی ہے

اصلاح کے اقدامات:

  1. فیصلہ کرنے کے لئے دیگر اشارے شامل کریں تاکہ whipsaws سے بچنے کے لئے
  2. مختلف مصنوعات کے مطابق ایم اے کی اقسام اور پیرامیٹرز کو ایڈجسٹ کریں
  3. خطرات کو کنٹرول کرنے کے لئے سٹاپ نقصان اور منافع کے تناسب کو بہتر بنائیں

نتیجہ

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


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

//@version=3
// Simple yet effective MA cross strategy.
// You'll have to tune the parameters to get an optimal win ratio.
// If JPY or XAU or any other currency with pips defined as the 
// second decimal digit are involved, do not forget to set the respective flag on.
//
// Created by vitelot/yanez/Vts, who's the same fellow with different user names
// December 2018 -- Merry Xmas
//
strategy("MA cross strategy Vts", overlay=true, initial_capital=1000, currency="EUR", pyramiding=0)

yr  = input(2016, title="Starting year to analyse")
src = input(close, title="Source")
maType = input( defval="EMA", title="MA Type", options=["SMA","EMA","HMA","McG","WMA"])
//
isJPY = input(false, title="Is JPY or XAU involved?") // JPY and Gold have the pips defined as the 2 decimal digit

maPar1 = input(26, minval=1, title="MA fast period")
maPar2 = input(51, minval=2, title="MA slow period")

atrPar = input(14,minval=1, title="ATR period")
atrMulSL = input(1.5, title="SL ATR multiplicator")
atrMulTP = input(1.0, title="TP ATR multiplicator")

hma(sig, n) => // Hull moving average definition
    wma( 2*wma(sig,round(n/2))-wma(sig,n), round(sqrt(n)))

mcg(sig,length) => // Mc Ginley MA definition
    mg = 0.0
    mg := na(mg[1]) ? ema(sig, length) : mg[1] + (sig - mg[1]) / (length * pow(sig/mg[1], 4))

ma(t,sig,len) =>
    if t =="SMA"
        sma(sig,len)
    else
        if t == "EMA"
            ema(sig,len)
        else
            if t == "HMA"
                hma(sig,len)
            else
                if t == "McG" // Mc Ginley
                    mcg(sig,len)
                else
                    wma(sig,len)
                    
        
sig1 = ma(maType, src, maPar1)
sig2 = ma(maType, src, maPar2)

tickFactor = isJPY? 1e3: 1e5
sl = atrMulSL*atr(atrPar)*tickFactor
tp = atrMulTP*atr(atrPar)*tickFactor

plot(sig1, color=aqua, title="MA1", linewidth=2)
plot(sig2, color=orange, title="MA2", linewidth=2)

longCondition = crossunder(sig2, sig1) and year>=yr // change the >= to == if you like exact years not a range
if (longCondition)
    strategy.entry("Long", strategy.long, qty=1) // exit trade when SL and TP are hit
    strategy.exit("Exit Long", "Long", loss=sl, profit=tp)
if (crossunder(sig1, sig2)) // or when the short condition is met
    strategy.close("Long")

shortCondition = crossover(sig2,sig1) and year>=yr // change the >= to == if you like exact years not a range
if (shortCondition)
    strategy.entry("Short", strategy.short, qty=1)
    strategy.exit("Exit Short", "Short", loss=sl, profit=tp)
if (crossover(sig1,sig2))
    strategy.close("Short")


مزید