ملٹی مومینٹم اشارے کے امتزاج کی حکمت عملی


تخلیق کی تاریخ: 2023-09-24 13:24:47 آخر میں ترمیم کریں: 2023-09-24 13:24:47
کاپی: 0 کلکس کی تعداد: 823
1
پر توجہ دیں
1617
پیروکار

جائزہ

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

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

  1. چینڈے انڈیکس کا حساب لگائیں اور اس کی خرید و فروخت کی لائن ترتیب دیں

  2. RMI اشارے ، ٹرپل HMA RSI ، ڈبل ای وی ڈبلیو RSI ، ٹرپل ای ایم اے RSI وغیرہ جیسے متعدد اشارے کا حساب لگائیں۔

  3. ہر اشارے کے لئے خرید اور فروخت کی لائنیں مرتب کریں۔

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

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

اسٹریٹجک فوائد

  1. ایک سے زیادہ اشارے کے مجموعے، ایک دوسرے کی تصدیق کر سکتے ہیں، غلطی سے بچنے کے لئے.

  2. چانڈے متحرک اشارے رجحان کی تبدیلیوں کے لئے حساس ہے اور موڑ کو مؤثر طریقے سے پکڑ سکتا ہے۔

  3. آر ایم آئی اشارے آپ کو زیادہ خریدنے اور زیادہ فروخت کرنے کے لئے طاقت کی سطح کی نشاندہی کرسکتے ہیں۔

  4. ایچ ایم اے آر ایس آئی ، ای وی ڈبلیو آر ایس آئی اور دیگر اشارے آر ایس آئی کے حساب کتاب کے مختلف طریقوں کی جانچ کرتے ہیں۔

  5. کثیر اشارے کے مجموعے کے طریقوں سے اشارے کی تاثیر کی جانچ میں لچک پیدا ہوتی ہے۔

اسٹریٹجک رسک

  1. کثیر اشارے کے مجموعے کی ضروریات کو پورا کرنا مشکل ہے ، سگنل کم ہیں ، اور مواقع ضائع ہوسکتے ہیں۔

  2. خطرے کو کنٹرول کرنے کا کوئی ذریعہ نہیں، جیسے کہ نقصان کو روکنا۔

  3. اشارے کا اثر وقت کے دورانیے پر منحصر ہے اور مختلف دورانیوں کے لئے غیر حساس ہوسکتا ہے۔

  4. پیرامیٹرز کی اصلاح کے بغیر ، اشارے پیرامیٹرز کی ترتیب غلط ہوسکتی ہے۔

  5. اس کے علاوہ، اس نے کہا کہ اس کی حکمت عملی کو مکمل طور پر درست کرنے کے لئے کافی اعداد و شمار نہیں ہیں.

اس کا حل کیا ہے؟

  1. انڈیکس کی قدر میں کمی کو مناسب طریقے سے کم کریں تاکہ زیادہ سے زیادہ تجارت کے مواقع فراہم کیے جائیں۔

  2. موبائل سٹاپ یا ہارڈ سٹاپ شامل کریں تاکہ ایک ہی نقصان کو کنٹرول کیا جا سکے۔

  3. مختلف سائیکلوں اور اقسام میں ٹیسٹ کریں اور بہترین پیرامیٹرز تلاش کریں۔

  4. پیرامیٹرز کو بہتر بنانے کے لئے مشین لرننگ یا گرڈ سرچ جیسے طریقوں کا استعمال کریں۔

  5. مزید مارکیٹوں میں ریٹرننگ کی جائے گی تاکہ حکمت عملی کو مستحکم کیا جا سکے۔

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

  1. مختلف اشاریہ پیرامیٹرز کی ترتیبات کی جانچ کریں اور بہترین ترتیب تلاش کریں۔

  2. ایک سے زیادہ ٹائم اسکیل کے لئے خود کار طریقے سے متحرک اشارے شامل کریں.

  3. رجحانات کا پتہ لگانے اور منفی تجارت سے بچنے کے لئے.

  4. مشین لرننگ کا استعمال کرتے ہوئے کثیر پیمانے پر وزن کی ترتیب کو بہتر بنانا۔

  5. اس کے علاوہ ، اس میں ایک ہی لائن سسٹم شامل ہے ، جس سے میدان میں داخل ہونے کا وقت تبدیل ہوتا ہے۔

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-08-24 00:00:00
end: 2023-09-23 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/
// © burgercrisis

//@version=4
strategy("RMI + Triple HMRSI + Double EVWRSI + TERSI Strategy")

//* Backtesting Period Selector | Component *//
//* https://www.tradingview.com/script/eCC1cvxQ-Backtesting-Period-Selector-Component *//
//* https://www.tradingview.com/u/pbergden/ *//
//* Modifications made *//
testStartYear = input(2021, "Backtest Start Year") 
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(999999, "Backtest Stop Year")
testStopMonth = input(9, "Backtest Stop Month")
testStopDay = input(26, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

testPeriod() => true
/////////////// END - Backtesting Period Selector | Component ///////////////


src = input(close, "Price", type = input.source)
CMOlength = input(9, minval=1, title="Alpha Chande Momentum Length")

//CMO
momm = change(src)
f1(m) => m >= 0.0 ? m : 0.0
f2(m) => m >= 0.0 ? 0.0 : -m
m1 = f1(momm)
m2 = f2(momm)
sm1 = sum(m1, CMOlength)
sm2 = sum(m2, CMOlength)
percent(nom, div) => 100 * nom / div
chandeMO = percent(sm1-sm2, sm1+sm2)
plot(chandeMO, "Chande MO", color=color.blue)




//RMI
// Copyright (c) 2018-present, Alex Orekhov (everget)
// Relative Momentum Index script may be freely distributed under the MIT license.
length3 = input(title="RMI Length", type=input.integer, minval=1, defval=30)
momentumLength3 = input(title="RMI Momentum ", type=input.integer, minval=1, defval=25)
up3 = rma(max(change(src, momentumLength3), 0), length3)
down3 = rma(-min(change(src, momentumLength3), 0), length3)

rmi3 = (down3 == 0 ? 100 : up3 == 0 ? 0 : 100 - (100 / (1 + up3 / down3)))-50
//
//
// end RMI, end Alex Orekhov copywrite
//
//

lengthMA = input(7)
lengthRSI = input(14)
thrsi = hma(hma(hma(rsi(src, lengthRSI), lengthMA), lengthMA), lengthMA)
thrsi1 = (thrsi-50)*10

lengthMA2 = input(7)
lengthRSI2 = input(14)
devwrsi = ((ema(ema(vwma(rsi(src, lengthRSI2), lengthMA2), lengthMA2), lengthMA2))-50)*5

lengthMA3 = input(7)
lengthRSI3 = input(14)
tersi = ((ema(ema(ema(rsi(src, lengthRSI3), lengthMA3), lengthMA3), lengthMA3))-50)*10

rmirsi = ((thrsi*rmi3/25))

//Boundary Lines

obLevel1 = input(0, title="Chande Sellline")
osLevel1 = input(0, title="Chande Buyline")
hline(obLevel1, color=#0bc4d9)
hline(osLevel1, color=#0bc4d9)

obLevel2 = input(0, title="Triple HMRSI Sellline")
osLevel2 = input(0, title="Triple HMRSI Buyline")
hline(obLevel2, color=#5a0bd9)
hline(osLevel2, color=#5a0bd9)

obLevel3 = input(0, title="DEVWRSI Sellline")
osLevel3 = input(0, title="DEVWRSI Buyline")
hline(obLevel3, color=#5a0bd9)
hline(osLevel3, color=#5a0bd9)

obLevel4 = input(0, title="TERSI Sellline")
osLevel4 = input(0, title="TERSI Buyline")
hline(obLevel4, color=#5a0bd9)
hline(osLevel4, color=#5a0bd9)

obLevel5 = input(0, title="RMI Sellline")
osLevel5 = input(0, title="RMI Buyline")
hline(obLevel5, color=#5a0bd9)
hline(osLevel5, color=#5a0bd9)

obLevel6 = input(0, title="RMI*RSI Sellline")
osLevel6 = input(0, title="RMI*RSI Buyline")
hline(obLevel6, color=#5a0bd9)
hline(osLevel6, color=#5a0bd9)

plot((thrsi1), title="THRSI")
plot(devwrsi, color=color.red, title="DEVWRSI")
plot(tersi, color=color.yellow, title="TERSI")
plot(rmirsi, color=color.purple, title="RMI*HMRSI")
plot(rmi3, color=color.orange, title="RMI")




longcondition1 = crossover(chandeMO, osLevel1)
shortcondition1 = crossunder(chandeMO, obLevel1)
longcondition2 = rmirsi<osLevel6 and rmi3<osLevel5 and tersi<osLevel4 and devwrsi<osLevel3 and thrsi1<osLevel2  and longcondition1
shortcondition2 = rmirsi>obLevel6 and rmi3>obLevel5 and tersi>obLevel4 and devwrsi>obLevel3 and thrsi1>obLevel2  and shortcondition1

if testPeriod()
    if longcondition2
        strategy.entry("Buy", strategy.long)
    if shortcondition2
        strategy.entry("Sell", strategy.short)






hline(0, color=#C0C0C0, linestyle=hline.style_dashed, title="Zero Line")