وسائل لوڈ ہو رہے ہیں... لوڈنگ...

معاونت اور مزاحمت کی مقدار میں اتار چڑھاؤ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2024-01-25 15:53:06
ٹیگز:

img

جائزہ

یہ حکمت عملی RSI کراس اوور حکمت عملی کو بہتر اسٹاپ نقصان کی حکمت عملی کے ساتھ جوڑتی ہے تاکہ عین مطابق منطقی کنٹرول اور درست اسٹاپ نقصان اور منافع حاصل کیا جاسکے۔ دریں اثنا ، سگنل کی اصلاح متعارف کرانے سے ، یہ رجحان کو بہتر طور پر سمجھ سکتا ہے اور معقول سرمایہ کاری کا انتظام حاصل کرسکتا ہے۔

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

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

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

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

خطرے کا تجزیہ

  1. جب مارکیٹ میں کمی جاری رہے گی تو زیادہ خطرہ کا سامنا کرنا پڑے گا۔
  2. تجارت کی اعلی تعدد تجارت کی لاگت اور سلائڈ لاگت میں اضافہ کرتی ہے۔

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

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

نتیجہ


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//study(title="@sentenzal strategy", shorttitle="@sentenzal strategy", overlay=true)
strategy(title="@sentenzal strategy", shorttitle="@sentenzal strategy", overlay=true  )
smoothK = input(3, minval=1)
smoothD = input(3, minval=1)
lengthRSI = input(14, minval=1)
lengthStoch = input(14, minval=1)
overbought = input(80, minval=1)
oversold = input(20, minval=1)
smaLengh = input(100, minval=1)
smaLengh2 = input(50, minval=1)
smaLengh3 = input(20, minval=1)

src = input(close, title="RSI Source")
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testPeriod() =>
    time >= testPeriodStart ? true : false

rsi1 = rsi(src, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
crossBuy = crossover(k, d) and k < oversold
crossSell = crossunder(k, d) and k > overbought

dcLower = lowest(low, 10)
dcUpper = highest(high, 10)


heikinashi_close = security(heikinashi(syminfo.tickerid), timeframe.period, close)
heikinashi_open = security(heikinashi(syminfo.tickerid), timeframe.period, open)
heikinashi_low = security(heikinashi(syminfo.tickerid), timeframe.period, low)
heikinashi_high = security(heikinashi(syminfo.tickerid), timeframe.period, high)
heikinashiPositive = heikinashi_close >= heikinashi_open

heikinashiBuy = heikinashiPositive == true and heikinashiPositive[1] == false  and heikinashiPositive[2] == false
heikinashiSell = heikinashiPositive == false and heikinashiPositive[1] == true and heikinashiPositive[2] == true

//plotshape(heikinashiBuy, style=shape.arrowup, color=green, location=location.belowbar, size=size.tiny)
//plotshape(heikinashiSell, style=shape.arrowdown, color=red, location=location.abovebar, size=size.tiny)

buy = (crossBuy == true or crossBuy[1] == true or crossBuy[2] == true) and (heikinashiBuy == true or heikinashiBuy[1] == true or heikinashiBuy[2] == true)
sell = (crossSell == true or crossSell[1] == true or crossSell[2] == true) and (heikinashiSell == true or heikinashiSell[1] == true or heikinashiSell[2] == true)

mult = timeframe.period == '15' ? 4 : 1
mult2 = timeframe.period == '240' ? 0.25 : mult

movingAverage = sma(close, round(smaLengh))
movingAverage2 = sma(close, round(smaLengh2))
movingAverage3 = sma(close, round(smaLengh3))

uptrend = movingAverage < movingAverage2 and movingAverage2 < movingAverage3 and close > movingAverage
downtrend = movingAverage > movingAverage2 and movingAverage2 > movingAverage3 and close < movingAverage

signalBuy = (buy[1] == false and buy[2] == false and buy == true) and uptrend
signalSell = (sell[1] == false and sell[2] == false and sell == true) and downtrend

takeProfitSell = (buy[1] == false and buy[2] == false and buy == true) and uptrend == false
takeProfitBuy = (sell[1] == false and sell[2] == false and sell == true)  and uptrend

plotshape(signalBuy, style=shape.triangleup, color=green, location=location.belowbar, size=size.tiny)
plotshape(signalSell, style=shape.triangledown, color=red, location=location.abovebar, size=size.tiny)



plot(movingAverage, linewidth=3, color=orange, transp=0)
plot(movingAverage2, linewidth=2, color=purple, transp=0)
plot(movingAverage3, linewidth=1, color=navy, transp=0)

alertcondition(signalBuy, title='Signal Buy', message='Signal Buy')
alertcondition(signalSell, title='Signal Sell', message='Signal Sell')


strategy.close("L", when=dcLower[1] > low)
strategy.close("S", when=dcUpper[1] < high)

strategy.entry("L", strategy.long, 1, when = signalBuy and testPeriod() and uptrend) 
strategy.entry("S", strategy.short, 1, when = signalSell and testPeriod() and uptrend ==false) 

//strategy.exit("Exit Long", from_entry = "L", loss = 25000000, profit=25000000)
//strategy.exit("Exit Short", from_entry = "S", loss = 25000000, profit=25000000)



مزید