ایم ایف آئی اور ایم اے پر مبنی مقداری الٹ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-27 14:42:16
ٹیگز:

img

جائزہ

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

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

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

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

تجارتی منطق مندرجہ ذیل ہے:

  1. جب ایم ایف آئی 20 سے نیچے اوور سیل زون میں داخل ہوتا ہے اور بندش ایم اے لائن سے اوپر ہوتی ہے تو خریدنے کا سگنل پیدا ہوتا ہے۔

  2. جب ایم ایف آئی 80 سے اوپر اور زیادہ خرید زون میں داخل ہوتا ہے اور بند ہونے والے ایم اے لائن کو توڑتا ہے تو ، فروخت کا اشارہ شروع ہوتا ہے۔

دوہری اشارے کی تصدیق کے ساتھ، حکمت عملی قابل اعتماد اندراج سگنل کے ساتھ مؤثر طریقے سے واپسی کے مواقع کی نشاندہی کر سکتی ہے.

فوائد

  1. دوہری اشارے کی تصدیق سے غلط بریک آؤٹ سے بچنے اور سگنل کی اعلی وشوسنییتا کو یقینی بناتا ہے۔

  2. زیادہ سے زیادہ خریدنے / زیادہ سے زیادہ فروخت کی واپسی کا استعمال ایک کلاسیکی اور وقت کی جانچ کی تجارتی تکنیک ہے.

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

  4. مختلف مارکیٹوں میں قابل اطلاق اور مضبوط موافقت کے ساتھ۔

خطرات

  1. مارکیٹ میں مسلسل اوپر یا نیچے کا رجحان ہوسکتا ہے جس کی وجہ سے نقصان کو روکنا پڑتا ہے۔

  2. انتہائی مارکیٹ کے حالات میں منظم خطرات سے خبردار رہنے کی ضرورت ہے جس کی وجہ سے ناقابل واپسی نقطہ نظر کا سبب بنتا ہے.

  3. تجارت کی اعلی تعدد سے لین دین کے اخراجات میں اضافہ ہوسکتا ہے۔

تخفیف:

  1. حکمت عملی کو زیادہ جگہ دینے کے لئے وسیع سٹاپ نقصان کی اجازت دیں.

  2. احتیاط کے ساتھ پوزیشن سائزنگ میں اضافہ کریں جبکہ نظاماتی خطرے کے اشارے کے لئے اعلی ٹائم فریم چارٹس کو دیکھیں.

  3. غیر ضروری تجارت سے بچنے کے لئے پیرامیٹرز کو بہتر بنائیں.

بہتر مواقع

  1. ٹریڈنگ آلہ کی خصوصیات سے ملنے کے لئے ایم اے پیرامیٹرز کو بہتر بنائیں۔

  2. مارکیٹ کے مختلف جذبات کی بنیاد پر زیادہ خریدنے / زیادہ فروخت کی سطح کو ٹھیک کریں۔

  3. زیادہ کنٹرول شدہ منافع کے لئے پوزیشن سائزنگ کے قوانین کو شامل کریں.

نتیجہ

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


/*backtest
start: 2023-12-19 00:00:00
end: 2023-12-26 00:00:00
period: 1m
basePeriod: 1m
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/
// © vikris

//@version=4
strategy("[VJ]Thor for MFI", overlay=true, calc_on_every_tick = false,pyramiding=0)

// ********** Strategy inputs - Start **********

// Used for intraday handling
// Session value should be from market start to the time you want to square-off 
// your intraday strategy
// Important: The end time should be at least 2 minutes before the intraday
// square-off time set by your broker
var i_marketSession = input(title="Market session", type=input.session, 
     defval="0915-1455", confirm=true)

// Make inputs that set the take profit % (optional)
longProfitPerc = input(title="Long Take Profit (%)",
     type=input.float, minval=0.0, step=0.1, defval=1) * 0.01

shortProfitPerc = input(title="Short Take Profit (%)",
     type=input.float, minval=0.0, step=0.1, defval=1) * 0.01
     
// Set stop loss level with input options (optional)
longLossPerc = input(title="Long Stop Loss (%)",
     type=input.float, minval=0.0, step=0.1, defval=0.5) * 0.01

shortLossPerc = input(title="Short Stop Loss (%)",
     type=input.float, minval=0.0, step=0.1, defval=0.5) * 0.01    

i_MFI = input(3, title="MFI Length")
OB=input(100, title="Overbought Level")
OS=input(0, title="Oversold Level")
barsizeThreshold=input(.5, step=.05, minval=.1, maxval=1, title="Bar Body Size, 1=No Wicks")
i_MAFilter = input(true, title="Use MA Trend Filter")
i_MALen = input(80, title="MA Length")
// ********** Strategy inputs - End **********


// ********** Supporting functions - Start **********

// A function to check whether the bar or period is in intraday session
barInSession(sess) => time(timeframe.period, sess) != 0
// Figure out take profit price
longExitPrice  = strategy.position_avg_price * (1 + longProfitPerc)
shortExitPrice = strategy.position_avg_price * (1 - shortProfitPerc)

// Determine stop loss price
longStopPrice  = strategy.position_avg_price * (1 - longLossPerc)
shortStopPrice = strategy.position_avg_price * (1 + shortLossPerc)


// ********** Supporting functions - End **********


// ********** Strategy - Start **********
// See if intraday session is active
bool intradaySession = true

// Trade only if intraday session is active

//=================Strategy logic goes in here===========================
 

MFI=mfi(close,i_MFI)
barsize=high-low
barbodysize=close>open?(open-close)*-1:(open-close)
shortwicksbar=barbodysize>barsize*barsizeThreshold
SMA=sma(close, i_MALen)
MAFilter=close > SMA



BUY = MFI[1] == OB and close > open and shortwicksbar and (i_MAFilter ? MAFilter : true)

SELL = MFI[1] == OS and close < open and shortwicksbar and (i_MAFilter ? not MAFilter : true) 

//Final Long/Short Condition
longCondition = BUY
shortCondition = SELL
 
//Long Strategy - buy condition and exits with Take profit and SL
if (longCondition and intradaySession)
    stop_level = longStopPrice
    profit_level = longExitPrice
    strategy.entry("Buy", strategy.long)
    strategy.exit("TP/SL", "Buy", stop=stop_level, limit=profit_level)


//Short Strategy - sell condition and exits with Take profit and SL
if (shortCondition and intradaySession)
    stop_level = shortStopPrice
    profit_level = shortExitPrice
    strategy.entry("Sell", strategy.short)
    strategy.exit("TP/SL", "Sell", stop=stop_level, limit=profit_level)
 
 
// Square-off position (when session is over and position is open)
squareOff = (not intradaySession) and (strategy.position_size != 0)
strategy.close_all(when = squareOff, comment = "Square-off")

// ********** Strategy - End **********

مزید