یہ حکمت عملی رجحان کی سمت کا تعین کرنے کے لئے وی ڈبلیو ایم اے کا استعمال کرتی ہے اور رجحان کی پیروی کرنے کے لئے اے ٹی آر کے ساتھ اسٹاپ نقصان طے کرتی ہے۔ یہ واضح رجحانات والے بازاروں کے لئے موزوں ہے۔
رجحان کی سمت کا تعین کرنے کے لئے VWMA کا استعمال کریں۔ جب قیمت VWMA سے اوپر ہو تو لمبی ہو ، جب قیمت VWMA سے نیچے ہو تو مختصر ہو۔
غلط بریک آؤٹ سگنل سے بچنے کے لئے آر ایس آئی آسکیلیٹر فلٹر شامل کریں۔ صرف اس وقت طویل سگنل لیں جب آر ایس آئی 30 سے زیادہ ہو۔
سٹاپ نقصان لائن کا حساب کرنے کے لئے اے ٹی آر کا استعمال کریں۔ اے ٹی آر کی لمبائی وی ڈبلیو ایم اے کے برابر ہے ، ضرب 3.5 ہے۔ اسٹاپ نقصان لائن کو حقیقی وقت میں اپ ڈیٹ کریں۔
اے ٹی آر ضارب اسٹاپ نقصان لائن کی تنگی کو کنٹرول کرتا ہے۔ بڑے ضارب کا مطلب کم بار بار اپ ڈیٹ ہوتا ہے ، جو رجحان کی پیروی کے لئے بہتر ہوتا ہے۔
پوزیشن کا سائز اکاؤنٹ کے ایکویٹی اور سٹاپ نقصان فیصد کی بنیاد پر شمار کیا جاتا ہے۔
جب قیمت سٹاپ نقصان لائن سے نیچے ہو تو طویل پوزیشن سے باہر نکلیں۔
رجحان کا تعین کرنے کے لئے VWMA کا استعمال کرتے ہوئے رجحان کے مواقع کو مستقل طور پر پکڑتا ہے.
آر ایس آئی فلٹر کچھ جھوٹے بریک آؤٹ سگنل سے بچتا ہے۔
اے ٹی آر ٹریلنگ اسٹاپ رجحان کی پیروی کرتا ہے اور الٹ کی طرف سے روکنے سے بچتا ہے۔
اکاؤنٹ کی ایکویٹی اور سٹاپ نقصان پر مبنی پوزیشن سائزنگ خطرے کے انتظام کو ترجیح دیتی ہے۔
رجحان موڑ کے مقامات پر ممکنہ نقصان۔ نقصانات کو محدود کرنے کے لئے پوزیشن کا سائز کم کرنا چاہئے۔
غلط ATR پیرامیٹر کی ترتیب بہت تنگ یا لچکدار سٹاپ نقصان لائن کی طرف جاتا ہے. پیرامیٹرز ٹیسٹ کیا جانا چاہئے.
تیزی سے رجحان کی تبدیلی کے نتیجے میں اسٹاپ نقصان کی تازہ کاری میں تاخیر ہوسکتی ہے ، نقصانات میں اضافہ ہوتا ہے۔
کم اتار چڑھاؤ کے ماحول میں پوزیشن کا سائز کم کریں اور اسٹاپ نقصان کی تازہ کاری کی تعدد میں اضافہ کریں۔
بہترین سگنل پیرامیٹرز تلاش کرنے کے لئے مختلف VWMA پیرامیٹرز کے مجموعے کی جانچ کریں.
RSI کی دیگر ترتیبات کی جانچ کریں جیسے overbought/oversold لائنز۔
ٹیسٹ ATR ضرب کرنے کے لئے بہترین توازن تلاش کرنے کے لئے کم کرنے اور ٹریکنگ کی صلاحیت کے درمیان.
سگنل کے معیار کو بہتر بنانے کے لئے MACD، KD جیسے دیگر فلٹرز شامل کریں.
مارکیٹ کی اتار چڑھاؤ کی بنیاد پر پوزیشن سائزنگ اور سٹاپ نقصان فیصد کو بہتر بنائیں.
اس حکمت عملی میں مجموعی طور پر رجحان کی پیروی کرنے والا تعصب ہوتا ہے اور قیمت کے واضح رجحانات کو اچھی طرح سے پکڑتا ہے۔ اس میں رجحان کا تعین ، سگنل فلٹرنگ ، اسٹاپ نقصان کی پیروی وغیرہ کے فوائد ہیں۔ اس میں رجحان کے الٹ جانے کے خطرات بھی ہیں۔ ٹھیک ٹیوننگ پیرامیٹرز اور پوزیشن سائزنگ بہتر کارکردگی کا باعث بن سکتی ہے۔
/*backtest start: 2023-10-07 00:00:00 end: 2023-10-13 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/ // © mohanee //@version=4 //strategy("", overlay=true) strategy(title="VWMA_withATRstops_strategy V2", overlay=true, pyramiding=1, default_qty_type=strategy.percent_of_equity, default_qty_value=20, initial_capital=10000, currency=currency.USD) //default_qty_value=10, default_qty_type=strategy.fixed, float xATRTrailingStop=na int pos=na vwmalength = input(33, title="VWMA Length", minval=1, maxval=365) //vwmalength2 = input(9, title="VWAM Short Term Length", minval=1, maxval=365) nATRPeriod = input(33, title="ATR length", minval=1, maxval=365) nATRMultip = input(3.5, title="ATR Multiplier") rsiofVwmaLength=input(14, title="RSI of VWMA Length") riskCapital = input(title="Risk % of capital", defval=10, minval=1) stopLoss=input(5,title="Stop Loss",minval=1) vwmaVal=vwma(close, vwmalength) //vwmaVal2=vwma(close, vwmalength2) //maVal=sma(close, vwmalength) plot(vwmaVal, color=color.orange, linewidth=2, title="VWMA") //plot(vwmaVal2, color=color.blue, title="VWMA Short Term") //plot(maVal, color=color.blue, title="MA") //rsi of vwma Longterm rsiofVwmaVal=rsi(vwmaVal,rsiofVwmaLength) xATR = atr(nATRPeriod) nLoss = nATRMultip * xATR xATRTrailingStop:= iff(close > nz(xATRTrailingStop[1], 0) and close[1] > nz(xATRTrailingStop[1], 0), max(nz(xATRTrailingStop[1]), close - nLoss), iff(close < nz(xATRTrailingStop[1], 0) and close[1] < nz(xATRTrailingStop[1], 0), min(nz(xATRTrailingStop[1]), close + nLoss), iff(close > nz(xATRTrailingStop[1], 0), close - nLoss, close + nLoss))) pos:= iff(close[1] < nz(xATRTrailingStop[1], 0) and close > nz(xATRTrailingStop[1], 0), 1, iff(close[1] > nz(xATRTrailingStop[1], 0) and close < nz(xATRTrailingStop[1], 0), -1, nz(pos[1], 0))) color1 = pos == -1 ? color.red: pos == 1 ? color.green : color.blue //plot(xATRTrailingStop, color=color1, title="ATR Trailing Stop") //Entry-- //Echeck how many units can be purchased based on risk manage ment and stop loss qty1 = (strategy.equity * riskCapital / 100 ) / (close*stopLoss/100) //check if cash is sufficient to buy qty1 , if capital not available use the available capital only qty1:= (qty1 * close >= strategy.equity ) ? (strategy.equity / close) : qty1 //Long Entry //strategy.entry(id="VWMA LE", long=true, qty=qty1, when= close >vwmaVal and open>vwmaVal and close>open and close > xATRTrailingStop and xATRTrailingStop> vwmaVal) strategy.entry(id="VWMA LE", long=true, qty=qty1, when= rsiofVwmaVal>=30 and close>open and close>vwmaVal and pos == 1 ) ///pos == 1 means ATRStop line is green //vwmaVal2>vwmaVal and plot(strategy.position_size>=1 ? xATRTrailingStop : na, color=color1, style=plot.style_linebr, title="ATR Trailing Stop") bgcolor(strategy.position_size>=1 ? color.blue : na ) //Exit strategy.close(id="VWMA LE", when= strategy.position_size>=1 and crossunder(close, xATRTrailingStop) ) //strategy.close(id="VWMA LE", when= strategy.position_size>=1 and close<vwmaVal and open<vwmaVal and close<open )