
اس حکمت عملی کا نام ‘میگنیشن ڈبل ٹرینڈ سگنل کا الٹ پلٹ’ ہے۔ یہ دو مختلف حکمت عملی سگنلوں کو جوڑتا ہے۔ ایک مختصر مدت کا الٹ پلٹ سگنل ہے جو بے ترتیب اشارے پر مبنی ہے ، اور دوسرا طویل مدتی رجحان سگنل ہے جو حجم پر مبنی ہے ، دونوں مل کر مستحکم انٹری سگنل تشکیل دیتے ہیں۔
یہ حکمت عملی دو حصوں پر مشتمل ہے۔ پہلا حصہ 9 ویں اسٹوک اشارے کا استعمال کرتے ہوئے قلیل مدتی الٹ سگنل پیدا کرتا ہے۔ خاص طور پر ، اگر اختتامی قیمت ایک دن پہلے سے زیادہ بڑھتی ہے ، اور 9 ویں دن کی تیز لائن 50 سے کم ہے اور سست لائن 50 سے زیادہ ہے۔ اگر اختتامی قیمت ایک دن پہلے کم ہوتی ہے ، اور 9 ویں دن کی تیز لائن 50 سے زیادہ ہے اور سست لائن 50 سے کم ہے۔ اس طرح اسٹوک اشارے کا استعمال کرتے ہوئے گولڈ فورک ڈیڈ فورک کا استعمال کرتے ہوئے قلیل مدتی الٹ سگنل پیدا کریں۔
دوسرا حصہ منفی ٹرانزیکشن حجم انڈیکس ((NVI) کا استعمال کرتے ہوئے طویل مدتی رجحان سگنل تشکیل دیتا ہے۔ این وی آئی کا حساب کتاب فارمولا یہ ہے کہ اگر اس دن کا ٹرانزیکشن حجم پچھلے دن سے کم ہے تو ، اس دن کی اختتامی قیمت میں تبدیلی کی شرح جمع کردی جائے گی۔ اگر اس دن کا ٹرانزیکشن حجم پچھلے دن سے زیادہ یا اس کے برابر ہے تو ، پچھلے دن کی قدر برقرار رکھی جائے۔
آخر میں ، یہ حکمت عملی دو سگنلوں کو جوڑتی ہے۔ داخلہ سگنل صرف اس وقت تشکیل دیا جاتا ہے جب قلیل مدتی الٹ سگنل اور طویل مدتی رجحان سگنل ہم آہنگ ہوتے ہیں۔ اس سے جعلی سگنلوں کو فلٹر کرنے میں مدد ملتی ہے اور استحکام میں اضافہ ہوتا ہے۔
اس حکمت عملی کا سب سے بڑا فائدہ سگنل کی استحکام ہے۔ مختصر مدت کے الٹ سگنل مارکیٹ کی مختصر مدت کی اصلاح کو پکڑ سکتے ہیں ، طویل مدتی رجحان سگنل اس بات کو یقینی بناتے ہیں کہ بڑے رجحان میں کوئی تبدیلی نہیں ہے۔ دونوں کے امتزاج سے سگنل کی استحکام میں نمایاں اضافہ ہوتا ہے ، جو غلط رپورٹنگ کی اعلی شرح والے مختصر مدت کے سگنل کو مؤثر طریقے سے فلٹر کرسکتا ہے۔
اس کے علاوہ، اس حکمت عملی میں کم پیرامیٹرز ہیں اور اسے آسانی سے بہتر بنایا جاسکتا ہے۔ صارفین کو صرف این وی آئی کے پیرامیٹرز کو ایڈجسٹ کرنے کی ضرورت ہے تاکہ وہ مختلف مارکیٹوں کی خصوصیات کو اپنائیں۔
اس حکمت عملی کا سب سے بڑا خطرہ یہ ہے کہ دونوں سگنلوں کے مابین وقت کا فرق ہوسکتا ہے۔ مختصر مدت کے الٹ سگنل اور طویل مدتی رجحان سگنل کے مابین کچھ تاخیر ہوسکتی ہے ، جس کی وجہ سے دونوں سگنل ایک وقت میں متضاد ہوجاتے ہیں اور مستحکم انٹری سگنل نہیں بن پاتے ہیں۔
اس کے علاوہ، این وی آئی اشارے غیر معمولی طور پر بڑے پیمانے پر حجم میں تبدیلیوں کے لئے حساس ہیں، جو طویل مدتی رجحانات کے فیصلے میں غلطی کا سبب بن سکتا ہے.
ان خطرات کو کم کرنے کے لئے ، این وی آئی اشارے کے پیرامیٹرز کو مناسب طریقے سے ایڈجسٹ کیا جاسکتا ہے ، یا انفرادی نقصان کو کنٹرول کرنے کے لئے اسٹاپ نقصان میں اضافہ کیا جاسکتا ہے۔
اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
اسٹوک اشارے کے پیرامیٹرز کو بہتر بنانا ، ریورس کیپچر کی صلاحیت کو بہتر بنانا
طویل مدتی رجحانات کی نشاندہی کرنے کی صلاحیت کو بڑھانے کے لئے این وی آئی اشارے کی لمبائی کی مدت کو بہتر بنائیں۔
ٹرانزیکشن فلٹرنگ کے حالات میں اضافہ کریں تاکہ ٹرانزیکشن کی غیر معمولی غلطیوں کو خارج کردیں.
نقصان کو روکنے کے لئے حکمت عملی میں اضافہ کریں اور انفرادی نقصان کو کنٹرول کریں.
یہ حکمت عملی قلیل مدتی الٹ اور طویل مدتی رجحانات کی سوچ پر مبنی ہے۔ اسٹریٹجی کے مستحکم داخلے کے طریقہ کار کو ڈیزائن کیا گیا ہے ، جو غلط رپورٹنگ کی شرح کو مؤثر طریقے سے کنٹرول کرسکتا ہے ، سگنل کی استحکام کو بڑھا سکتا ہے۔ اگلے مرحلے میں اسٹریٹجی کی استحکام کو مزید بہتر بنانے کے لئے پیرامیٹرز کو ایڈجسٹ کرنے ، فلٹرنگ کے حالات میں اضافہ کرنے وغیرہ سے بہتر بنایا جاسکتا ہے۔
/*backtest
start: 2023-12-18 00:00:00
end: 2023-12-21 05:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 29/03/2021
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// The theory behind the indexes is as follows: On days of increasing
// volume, you can expect prices to increase, and on days of decreasing
// volume, you can expect prices to decrease. This goes with the idea of
// the market being in-gear and out-of-gear. Both PVI and NVI work in similar
// fashions: Both are a running cumulative of values, which means you either
// keep adding or subtracting price rate of change each day to the previous day`s
// sum. In the case of PVI, if today`s volume is less than yesterday`s, don`t add
// anything; if today`s volume is greater, then add today`s price rate of change.
// For NVI, add today`s price rate of change only if today`s volume is less than
// yesterday`s.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
NVI(EMA_Len) =>
pos = 0.0
nRes = 0.0
xROC = roc(close, EMA_Len)
nRes := iff(volume < volume[1], nz(nRes[1], 0) + xROC, nz(nRes[1], 0))
nResEMA = ema(nRes, EMA_Len)
pos := iff(nRes > nResEMA, 1,
iff(nRes < nResEMA, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Negative Volume Index", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Negative Volume Index ----")
EMA_Len = input(50, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posNVI = NVI(EMA_Len)
pos = iff(posReversal123 == 1 and posNVI == 1 , 1,
iff(posReversal123 == -1 and posNVI == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1 )
strategy.entry("Long", strategy.long)
if (possig == -1 )
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )