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

مصنف:چاؤ ژانگ، تاریخ: 2023-09-24 13:24:47
ٹیگز:

جائزہ

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

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

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

  2. RMI، Triple HMA RSI، Double EVW RSI، Triple EMA RSI اور دیگر اشارے کا حساب لگائیں۔

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

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

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

فوائد

  1. اشارے کو یکجا کرنے سے غلط سگنل سے بچنے کے لئے باہمی توثیق فراہم ہوتی ہے۔

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

  3. RMI زیادہ خریدنے / زیادہ فروخت کی سطح کی نشاندہی کرنے کے لئے رفتار کی سطح دکھاتا ہے.

  4. HMA RSI، EVW RSI وغیرہ کے ساتھ مختلف RSI حساب کی جانچ

  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")

مزید