کثیر ٹائم فریم آر ایس آئی اور چلتی اوسط ٹریڈنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-01-22 11:00:20
ٹیگز:

img

جائزہ

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

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

حکمت عملی سب سے پہلے 1 گھنٹے اور 5 منٹ کے ٹائم فریم دونوں پر 144 پیریڈ ڈبلیو ایم اے اور 5 پیریڈ ایس ایم اے کا حساب لگاتی ہے۔ جب 5 منٹ کا ایس ایم اے ڈبلیو ایم اے سے اوپر ہوتا ہے تو ہی تیزی کی مارکیٹ کی نشاندہی کی جاتی ہے۔ اس کے بعد حکمت عملی آر ایس آئی آسکیلیٹر اور متعلقہ کے اور ڈی لائنوں کا حساب لگاتی ہے۔ فروخت کے سگنل اس وقت پیدا ہوتے ہیں جب کے لائن اوور بُک ایریا سے ڈی لائن سے نیچے عبور کرتی ہے۔ خریدنے کے سگنل اس وقت پیدا ہوتے ہیں جب کے لائن اوور سیل ایریا سے ڈی لائن سے تجاوز کرتی ہے۔

فوائد کا تجزیہ

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

خطرے کا تجزیہ

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

اصلاح کی ہدایات

اسٹریٹیجی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:

  1. بہترین مجموعہ تلاش کرنے کے لئے SMA، WMA اور RSI کی مختلف لمبائیوں کا تجربہ کریں
  2. سگنل کی وشوسنییتا کی تصدیق کے لئے MACD، بولنگر بینڈ جیسے دیگر اشارے شامل کریں
  3. سٹاپ نقصان کو بہتر بنائیں اور فکسڈ تناسب اسٹاپ، ٹریلنگ اسٹاپ وغیرہ کی جانچ کرکے منافع حاصل کریں.
  4. تجارت کے سائز اور مجموعی طور پر خطرے سے متعلق نمائش کو کنٹرول کرنے کے لئے کیپٹل مینجمنٹ ماڈیولز شامل کریں
  5. بڑے پیمانے پر بیک ٹسٹنگ کے ذریعے بہترین کارکردگی کے پیرامیٹرز تلاش کرنے کے لئے مشین لرننگ ماڈل متعارف کروائیں

خلاصہ

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


/*backtest
start: 2023-12-22 00:00:00
end: 2024-01-21 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/
// © bufirolas

// Works well with a wide stop with 20 bars lookback
// for the SL level and a 2:1 reward ratio Take Profit .
// These parameters can be modified in the Inputs section of the strategy panel.

// "an entry signal it's a cross down or up on
// the stochastics. if you're in a downtrend
// on the hourly time frame you
// must also be in a downtrend on the five
// minute so the five period has to be below the 144
// as long as the five period is still trading below
// the 144 period on both the hourly and the five minutes
// we are looking for these short signals crosses down
// in the overbought region of the stochastic. Viceversa for longs"

//@version=4
strategy("Stoch + WMA + SMA strat", overlay=true)

//SL & TP Inputs
i_SL=input(true, title="Use Swing Lo/Hi Stop Loss & Take Profit")
i_SwingLookback=input(20, title="Swing Lo/Hi Lookback")
i_SLExpander=input(defval=10, step=1, title="SL Expander")
i_TPExpander=input(defval=30, step=1, title="TP Expander")
i_reverse=input(false, title="Reverse Trades")
i_TStop =input(false, title="Use Trailing Stop")

//Strategy Inputs
src4 = input(close, title="RSI Source")
stochOS=input(defval=20, step=5, title="Stochastics Oversold Level")
stochOB=input(defval=80, step=5, title="Stochastics Overbought Level")

//Stoch rsi Calculations
smoothK = input(3, minval=1)
smoothD = input(3, minval=1)
lengthRSI = input(14, minval=1)
lengthStoch = input(14, minval=1)
rsi1 = rsi(src4, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
h0 = hline(80, linestyle=hline.style_dotted)
h1 = hline(20, linestyle=hline.style_dotted)

//MA
wmalen=input(defval=144, title="WMA Length")
WMA = security(syminfo.tickerid, "60", wma(close, wmalen))
SMA = security(syminfo.tickerid, "60", sma(close, 5))
minWMA = wma(close, wmalen)
minSMA = sma(close, 5)

//Entry Logic
stobuy = crossover(k, d) and k < stochOS
stosell = crossunder(k, d) and k > stochOB
mabuy = minSMA > minWMA
daymabuy = SMA > WMA

//SL & TP Calculations
SwingLow=lowest(i_SwingLookback)
SwingHigh=highest(i_SwingLookback)
bought=strategy.position_size != strategy.position_size[1]
LSL=valuewhen(bought, SwingLow, 0)-((valuewhen(bought, atr(14), 0)/5)*i_SLExpander)
SSL=valuewhen(bought, SwingHigh, 0)+((valuewhen(bought, atr(14), 0)/5)*i_SLExpander)
lTP=(strategy.position_avg_price + (strategy.position_avg_price-(valuewhen(bought, SwingLow, 0)))+((valuewhen(bought, atr(14), 0)/5)*i_TPExpander))
sTP=(strategy.position_avg_price - (valuewhen(bought, SwingHigh, 0) - strategy.position_avg_price))-((valuewhen(bought, atr(14), 0)/5)*i_TPExpander)
islong=strategy.position_size > 0
isshort=strategy.position_size < 0

//TrailingStop
dif=(valuewhen(strategy.position_size>0 and strategy.position_size[1]<=0, high,0))
 -strategy.position_avg_price
trailOffset     = strategy.position_avg_price - LSL
var tstop = float(na)
if strategy.position_size > 0
    tstop := high- trailOffset - dif
    if tstop<tstop[1]
        tstop:=tstop[1]
else
    tstop := na
StrailOffset     = SSL - strategy.position_avg_price
var Ststop = float(na)
Sdif=strategy.position_avg_price-(valuewhen(strategy.position_size<0 
 and strategy.position_size[1]>=0, low,0))
if strategy.position_size < 0
    Ststop := low+ StrailOffset + Sdif
    if Ststop>Ststop[1]
        Ststop:=Ststop[1]
else
    Ststop := na
    
//Stop Selector
SL= islong ? LSL : isshort ? SSL : na
if i_TStop 
    SL:= islong ? tstop : isshort ? Ststop : na
TP= islong ? lTP : isshort ? sTP : na


//Entries
if stobuy and mabuy and daymabuy
    strategy.entry("long", long=not i_reverse?true:false)
if stosell and not mabuy and not daymabuy
    strategy.entry("short", long=not i_reverse?false:true)


//Exit
if i_SL
    strategy.exit("longexit", "long", stop=SL, limit=TP)
    strategy.exit("shortexit", "short", stop=SL, limit=TP)

//Plots
plot(i_SL ? SL : na, color=color.red, style=plot.style_cross)
plot(i_SL ? TP : na, color=color.green, style=plot.style_cross)
plot(minWMA)
plot(minSMA, color=color.green)




مزید