مقداری حکمت عملی: ایم اے کی طاقت اور کمزوری کے رجحان سے باخبر رہنا


تخلیق کی تاریخ: 2024-01-19 16:50:13 آخر میں ترمیم کریں: 2024-01-19 16:50:13
کاپی: 3 کلکس کی تعداد: 609
1
پر توجہ دیں
1617
پیروکار

مقداری حکمت عملی: ایم اے کی طاقت اور کمزوری کے رجحان سے باخبر رہنا

جائزہ

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

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

  1. 5 ، 10 ، 20 دن ، وغیرہ کے متعدد ایم اے کا حساب لگائیں اور فیصلہ کریں کہ آیا قیمت ہر ایم اے کو اوپر کی طرف سے توڑتی ہے ، نشان توڑتی ہے ، اور اس کے نتیجے میں ایلومینیم ایم اے کی مضبوطی کی لہر پیدا ہوتی ہے۔
  2. فاریکس مارکیٹ کے لئے بہترین بروکرز کیا ہیں؟ فاریکس مارکیٹ کے لئے بہترین بروکرز کیا ہیں؟ فاریکس مارکیٹ کے لئے بہترین بروکرز کیا ہیں؟ فاریکس مارکیٹ کے لئے بہترین بروکرز کیا ہیں؟ فاریکس مارکیٹ کے لئے بہترین بروکرز کیا ہیں؟
  3. ترتیب سے باخبر رہنے والے سائیکل پیرامیٹرز: مختصر مدت کے ایم اے گروپ نمبر ، طویل مدتی اوسط لائن کا دورانیہ ، پوزیشن کھولنے کے حالات وغیرہ۔

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

طاقت کا تجزیہ

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

خطرے کا تجزیہ

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

اصلاح کی سمت

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-12-19 00:00:00
end: 2024-01-18 00:00:00
period: 1h
basePeriod: 15m
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/
// © HeWhoMustNotBeNamed

//@version=4
strategy("MA Strength Strategy", overlay=false, initial_capital = 20000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, commission_type = strategy.commission.percent, pyramiding = 1, commission_value = 0.01)
MAType = input(title="Moving Average Type", defval="ema", options=["ema", "sma", "hma", "rma", "vwma", "wma"])
LookbackPeriod = input(10, step=10)

IndexMAType = input(title="Moving Average Type", defval="hma", options=["ema", "sma", "hma", "rma", "vwma", "wma"])
IndexMAPeriod = input(200, step=10)

considerTrendDirection = input(true)
considerTrendDirectionForExit = input(true)
offset = input(1, step=1)
tradeDirection = input(title="Trade Direction", defval=strategy.direction.long, options=[strategy.direction.all, strategy.direction.long, strategy.direction.short])
i_startTime = input(defval = timestamp("01 Jan 2010 00:00 +0000"), title = "Start Time", type = input.time)
i_endTime = input(defval = timestamp("01 Jan 2099 00:00 +0000"), title = "End Time", type = input.time)
inDateRange = true

f_getMovingAverage(source, MAType, length)=>
    ma = sma(source, length)
    if(MAType == "ema")
        ma := ema(source,length)
    if(MAType == "hma")
        ma := hma(source,length)
    if(MAType == "rma")
        ma := rma(source,length)
    if(MAType == "vwma")
        ma := vwma(source,length)
    if(MAType == "wma")
        ma := wma(source,length)
    ma
    

f_getMaAlignment(MAType, includePartiallyAligned)=>
    ma5 = f_getMovingAverage(close,MAType,5)
    ma10 = f_getMovingAverage(close,MAType,10)
    ma20 = f_getMovingAverage(close,MAType,20)
    ma30 = f_getMovingAverage(close,MAType,30)
    ma50 = f_getMovingAverage(close,MAType,50)
    ma100 = f_getMovingAverage(close,MAType,100)
    ma200 = f_getMovingAverage(close,MAType,200)

    upwardScore = 0.0
    upwardScore := close > ma5? upwardScore+1.10:upwardScore
    upwardScore := ma5 > ma10? upwardScore+1.10:upwardScore
    upwardScore := ma10 > ma20? upwardScore+1.10:upwardScore
    upwardScore := ma20 > ma30? upwardScore+1.10:upwardScore
    upwardScore := ma30 > ma50? upwardScore+1.15:upwardScore
    upwardScore := ma50 > ma100? upwardScore+1.20:upwardScore
    upwardScore := ma100 > ma200? upwardScore+1.25:upwardScore
    
    upwards = close > ma5 and ma5 > ma10 and ma10 > ma20 and ma20 > ma30 and ma30 > ma50 and ma50 > ma100 and ma100 > ma200
    downwards = close < ma5 and ma5 < ma10 and ma10 < ma20 and ma20 < ma30 and ma30 < ma50 and ma50 < ma100 and ma100 < ma200
    trendStrength = upwards?1:downwards?-1:includePartiallyAligned ? (upwardScore > 6? 0.5: upwardScore < 2?-0.5:upwardScore>4?0.25:-0.25) : 0
    [trendStrength, upwardScore]
    
includePartiallyAligned = true
[trendStrength, upwardScore] = f_getMaAlignment(MAType, includePartiallyAligned)

upwardSum = sum(upwardScore, LookbackPeriod)

indexSma = f_getMovingAverage(upwardSum,IndexMAType,IndexMAPeriod)

plot(upwardSum, title="Moving Average Strength", color=color.green, linewidth=2, style=plot.style_linebr)
plot(indexSma, title="Strength MA", color=color.red, linewidth=1, style=plot.style_linebr)
buyCondition = crossover(upwardSum,indexSma) and (upwardSum > upwardSum[offset] or not considerTrendDirection) 
sellCondition = crossunder(upwardSum,indexSma) and (upwardSum < upwardSum[offset]  or not considerTrendDirection)

exitBuyCondition = crossunder(upwardSum,indexSma)
exitSellCondition = crossover(upwardSum,indexSma) 
strategy.risk.allow_entry_in(tradeDirection)
strategy.entry("Buy", strategy.long, when= inDateRange and buyCondition, oca_name="oca_buy")
strategy.close("Buy", when = considerTrendDirectionForExit? sellCondition : exitBuyCondition)
strategy.entry("Sell", strategy.short, when= inDateRange and sellCondition, oca_name="oca_sell")
strategy.close( "Sell", when = considerTrendDirectionForExit? buyCondition : exitSellCondition)