
یہ حکمت عملی ایک مختصر لائن ٹریڈنگ حکمت عملی ہے جو MFI اشارے کا استعمال کرتے ہوئے اوورلوڈ اوور سیل علاقوں کی نشاندہی کرتی ہے ، جس میں ایم اے فلٹرنگ کے ساتھ مل کر قیمتوں کے الٹ جانے کی سمت کا تعین کرتی ہے۔ یہ اسٹاک ، فاریکس ، اجناس اور کریپٹو کرنسی جیسے بازاروں میں موثر ہوسکتی ہے۔
حکمت عملی مارکیٹ میں MFI اشارے کا استعمال کرتے ہوئے اوورلوڈ اور اوورلوڈ کا فیصلہ کرتی ہے۔ جب MFI 20 سے نیچے کے اوورلوڈ زون میں داخل ہوتا ہے تو ، نیچے والے زون کی نشاندہی کرتا ہے ، جس میں قدر کم ہوتی ہے ، اور اس وقت بیعانہ ہوتا ہے۔ جب MFI 80 سے اوپر کے اوورلوڈ زون میں داخل ہوتا ہے تو ، اوپری زون کی نشاندہی کرتا ہے ، جس میں اثاثوں کی زیادہ قیمت ہوتی ہے ، اور اس وقت بیعانہ ہوتا ہے۔
جعلی الٹ کو فلٹر کرنے کے لئے ، حکمت عملی میں قیمت کے رجحان کی سمت کا تعین کرنے کے لئے ایم اے اشارے بھی متعارف کروائے گئے ہیں۔ صرف اس صورت میں تجارتی سگنل پیدا ہوتا ہے جب قیمت ایم ایف آئی کے الٹ کے ساتھ ساتھ ایم اے کی اوسط لائن پر کھڑی ہو یا اس سے نیچے آجائے۔
اس کے علاوہ ، یہ بھی کہا گیا ہے کہ:
اس طرح، ڈبل اشارے فلٹرنگ کے ذریعے، آپ کو مؤثر طریقے سے واپسی کے مواقع کی شناخت کر سکتے ہیں، اور داخلہ سگنل زیادہ قابل اعتماد ہے.
کیا کرنا ہے:
اس حکمت عملی میں کلاسیکی تجزیاتی طریقوں کو جدید مقداری تکنیک کے ساتھ مربوط کیا گیا ہے۔ سخت ڈبل انڈیکس فلٹرنگ کے ذریعہ ، یہ مختلف اقسام میں مضبوط موافقت کا مظاہرہ کرتا ہے ، اور یہ ایک عمدہ عمومی شارٹ لائن حکمت عملی ہے۔
/*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 **********