اتار چڑھاؤ کے رجحان سے باخبر رہنے کی حکمت عملی پر مبنی


تخلیق کی تاریخ: 2024-02-18 10:07:29 آخر میں ترمیم کریں: 2024-02-18 10:07:29
کاپی: 0 کلکس کی تعداد: 538
1
پر توجہ دیں
1617
پیروکار

اتار چڑھاؤ کے رجحان سے باخبر رہنے کی حکمت عملی پر مبنی

جائزہ

یہ حکمت عملی قیمتوں کے رجحانات اور اوورلوڈ اوورلوڈ کو WaveTrend اشارے کے ذریعہ طے کرتی ہے ، جس میں RSI اشارے کے فلٹر سگنل کے ساتھ مل کر ، رجحانات کی پیروی کرنے کا طریقہ استعمال کیا جاتا ہے ، اور اوورلوڈ اوورلوڈ پوزیشن پر الٹا کام کیا جاتا ہے۔

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

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

اس حکمت عملی میں WaveTrend فارمولہ یہ ہے:

esa = ema(hlc3, 10) 
d = ema(abs(hlc3 - esa), 10)
ci = (hlc3 - esa) / (0.015 * d)
wt = ema(ci, 21)

اس میں سے ، esa ہیکن - ایشی اوسط کی حساب کتاب ہے ، اور d ہیکن - ایشی اوسط اور قیمت کی مطلق قدر کے فرق کی اوسط ہے۔ c یہ ایک نام نہاد موافقت کا فاصلہ ہے ، جو قیمت میں اتار چڑھاؤ کی شدت کی عکاسی کرتا ہے۔ wt سی کی اوسط ہے ، جس میں قیمت کے رجحان کی سمت کا فیصلہ کیا جاتا ہے ، جو زیادہ تر خالی سر کے اہم اشارے ہیں۔

آر ایس آئی اشارے کا استعمال اوور بیو اور اوور سیلنگ کا تعین کرنے کے لئے کیا جاتا ہے۔ آر ایس آئی کا حساب کتاب فارمولا ہے:

rsiup = rma(max(change(close), 0), 14) 
rsidown = rma(-min(change(close), 0), 14) 
rsi = rsidown == 0 ? 100 : rsiup == 0 ? 0 : 100 - (100 / (1 + rsiup / rsidown))

اس کی معیاری قدر 0-100 ہے، 70 سے زیادہ خریدنے والے زون، 30 سے کم فروخت زون.

جب RSI 25 سے کم ہوتا ہے تو ، WaveTrend 60 سے کم ہوتا ہے ، اور جب RSI 75 سے زیادہ ہوتا ہے تو ، WaveTrend 60 سے زیادہ ہوتا ہے۔

طاقت کا تجزیہ

یہ حکمت عملی مندرجہ ذیل فوائد رکھتی ہے:

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

خطرے کا تجزیہ

اس حکمت عملی کے کچھ خطرات بھی ہیں:

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

ردعمل:

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

اصلاح کی سمت

اس حکمت عملی کو مندرجہ ذیل طریقوں سے بہتر بنایا جاسکتا ہے:

  1. فیصلے کے اشارے کو تبدیل کریں یا فیصلے کے اشارے میں اضافہ کریں ، سگنل کی درستگی کو بہتر بنائیں۔ مثال کے طور پر فیصلہ کرنے والے اشارے جیسے MACD ، KD شامل کریں۔

  2. پیرامیٹرز کی ترتیبات کو بہتر بنائیں ، مختلف قسم کے تجارت کے مطابق۔ مثال کے طور پر ہموار دوروں کو ایڈجسٹ کریں ، بہترین پیرامیٹرز کا مجموعہ تلاش کریں۔

  3. ٹریکنگ اسٹاپ اسٹریٹجی میں شامل ہوں ، تاکہ انفرادی نقصانات کو مؤثر طریقے سے کنٹرول کیا جاسکے۔ مثال کے طور پر بیلنس فیصد اسٹاپ ، موبائل اسٹاپ وغیرہ۔

  4. مختلف ذخیرہ کرنے کی حکمت عملی پر غور کریں۔ مثال کے طور پر ، مارٹینگل ذخیرہ کرنے کی بجائے اصل مقررہ مقدار میں ذخیرہ کرنا۔

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=2
strategy(title = "Noro's WaveTrender Strategy v1.0", shorttitle = "WaveTrender str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 10)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
usemar = input(false, defval = false, title = "Use Martingale")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")
showarr = input(true, defval = true, title = "Show Arrows")
fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//RSI
rsiup = rma(max(change(close), 0), 14)
rsidown = rma(-min(change(close), 0), 14)
rsi = rsidown == 0 ? 100 : rsiup == 0 ? 0 : 100 - (100 / (1 + rsiup / rsidown))

//WaveTrend
esa = ema(hlc3, 10)
d = ema(abs(hlc3 - esa), 10)
ci = (hlc3 - esa) / (0.015 * d)
wt = ema(ci, 21)

//Body
body = abs(close - open)
abody = sma(body, 10)

//Signals
bar = close > open ? 1 : close < open ? -1 : 0
overs = rsi < 25 and wt < -60
overb = rsi > 75 and wt > 60
up1 = (strategy.position_size == 0 or close < strategy.position_avg_price) and overs and bar == -1
dn1 = (strategy.position_size == 0 or close > strategy.position_avg_price) and overb and bar == 1
exit = (strategy.position_size > 0 and overs == false) or (strategy.position_size < 0 and overb == false)

//Arrows
col = exit ? black : up1 or dn1 ? blue : na
needup = up1
needdn = dn1
needexitup = exit and strategy.position_size < 0
needexitdn = exit and strategy.position_size > 0
plotarrow(showarr and needup ? 1 : na, colorup = blue, colordown = blue, transp = 0)
plotarrow(showarr and needdn ? -1 : na, colorup = blue, colordown = blue, transp = 0)
plotarrow(showarr and needexitup ? 1 : na, colorup = black, colordown = black, transp = 0)
plotarrow(showarr and needexitdn ? -1 : na, colorup = black, colordown = black, transp = 0)

//Trading
profit = exit ? ((strategy.position_size > 0 and close > strategy.position_avg_price) or (strategy.position_size < 0 and close < strategy.position_avg_price)) ? 1 : -1 : profit[1]
mult = usemar ? exit ? profit == -1 ? mult[1] * 2 : 1 : mult[1] : 1
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 * mult : lot[1]

if up1
    if strategy.position_size < 0
        strategy.close_all()
        
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot)

if dn1
    if strategy.position_size > 0
        strategy.close_all()
        
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot)
    
if exit
    strategy.close_all()