
یہ حکمت عملی ٹریڈنگ سگنل پیدا کرنے کے لئے سادہ منتقل اوسط اور وزن والی منتقل اوسط کی کراسنگ پر مبنی ہے ، جبکہ پوزیشنوں کو روکنے اور روکنے کے ساتھ مل کر انتظام کیا جاتا ہے۔ یہ حکمت عملی متحرک عوامل (موبائل اوسط کراسنگ) اور جامد عوامل (فکسڈ اسٹاپ اسٹاپ اسٹاپ تناسب) کو یکجا کرتی ہے ، جس سے متحرک جامد اثر حاصل ہوتا ہے۔
بنیادی منطق یہ ہے کہ دو مختلف ادوار کی حرکت پذیر اوسطوں کا حساب لگایا جائے ، ایک 9 دن کی سادہ حرکت پذیر اوسط ہے ، اور دوسرا 21 دن کی وزن والی حرکت پذیر اوسط ہے۔ جب مختصر دورانیہ کی 9 دن کی سادہ حرکت پذیر اوسط پر لمبی دورانیہ کی 21 دن کی وزن والی حرکت پذیر اوسط کو عبور کیا جاتا ہے تو ، خریدنے کا اشارہ پیدا ہوتا ہے۔ جب مختصر دورانیہ کی لکیر کے نیچے لمبی دورانیہ کی لکیر کو عبور کیا جاتا ہے تو ، فروخت کا اشارہ پیدا ہوتا ہے۔
سگنل موصول ہونے کے بعد ، سیٹ اسٹاپ اسٹاپ تناسب کے مطابق آرڈر کریں۔ مثال کے طور پر ، اگر اسٹاپ تناسب 5٪ مقرر کیا گیا ہے تو ، اسٹاپ قیمت 95٪ داخلہ قیمت کے طور پر مقرر کی گئی ہے۔ اگر اسٹاپ تناسب 5٪ ہے تو ، اسٹاپ قیمت 105٪ داخلہ قیمت کے طور پر مقرر کی گئی ہے۔ اس طرح متحرک عنصر ((موبائل اوسط کراسنگ سے داخلے اور باہر نکلنے کا وقت طے ہوتا ہے) اور جامد عنصر ((فکسڈ اسٹاپ اسٹاپ تناسب) کے امتزاج کو حاصل کیا جاتا ہے۔
اس حکمت عملی میں متحرک تکنیکی اشارے اور جامد حکمت عملی کے پیرامیٹرز کا امتزاج کیا گیا ہے ، جس میں متحرک نظام کے فوائد ہیں۔ تکنیکی اشارے مارکیٹ کی خصوصیات کو متحرک طور پر پکڑنے کے قابل ہیں ، جو رجحانات کو سمجھنے میں معاون ہیں ، جبکہ پیرامیٹرز کی ترتیب مستحکم خطرہ اور واپسی کا کنٹرول فراہم کرتی ہے ، جو پوزیشن مینجمنٹ کی بے ترتیب کو کم کرنے میں معاون ہے۔
خالص متحرک نظام کے مقابلے میں ، یہ حکمت عملی پوزیشن مینجمنٹ میں زیادہ مستحکم ہے ، اور غیر منطقی فیصلوں کے اثرات کو کم کرسکتی ہے۔ خالص جامد نظام کے مقابلے میں ، اس حکمت عملی میں داخلے کے اختیارات زیادہ لچکدار ہیں ، جو مارکیٹ میں تبدیلیوں کے مطابق ڈھال سکتے ہیں۔ لہذا ، اس حکمت عملی کی مجموعی طور پر استحکام اور منافع دونوں بہتر ہیں۔
اس حکمت عملی کا خطرہ بنیادی طور پر دو پہلوؤں سے آتا ہے۔ پہلا یہ ہے کہ چلتی اوسط غلط سگنل پیدا کرنے کا امکان ہے۔ جب مارکیٹ میں جھٹکے کی صفائی ہوتی ہے تو ، چلتی اوسط اکثر کراس ہوسکتی ہے ، جس سے حکمت عملی کو قید کردیا جاتا ہے۔ دوسرا یہ ہے کہ فکسڈ اسٹاپ نقصان کی روک تھام کا خطرہ خاص مارکیٹ کے حالات کو اپنانے کے قابل نہیں ہے۔ جب اچانک واقعات مارکیٹ میں بڑے پیمانے پر اتار چڑھاؤ کا سبب بنتے ہیں تو ، اسٹاپ نقصان کی پیش گوئی کی پوزیشن کو توڑ دیا جاسکتا ہے ، اور خطرہ کو مؤثر طریقے سے کنٹرول نہیں کیا جاسکتا ہے۔
اس کا مقابلہ کرنے کا ایک طریقہ یہ ہے کہ اہم وقت کے نوڈس سے گریز کیا جائے ، اور غلط سگنل کا امکان کم کیا جائے۔ دوسرا طریقہ یہ ہے کہ مارکیٹ میں اتار چڑھاؤ اور خصوصی واقعات کے مطابق موافقت پذیر اسٹاپ نقصانات کے الگورتھم کو چالو کیا جائے ، تاکہ اسٹاپ نقصانات مارکیٹ میں ایڈجسٹ ہوجائیں۔
یہ حکمت عملی مندرجہ ذیل پہلوؤں سے بہتر بنائی جا سکتی ہے۔
مختلف پیرامیٹرز کے امتزاج کی جانچ اور بہترین تلاش؛
اس کے علاوہ ، اس میں مزید فلٹرنگ کی شرائط شامل کی گئی ہیں تاکہ سگنل کو غیر فعال کیا جا سکے۔
مارکیٹوں کے ساتھ منسلک ہونے کے لئے ایڈجسٹمنٹ اسٹاپ نقصان کے الگورتھم کو لاگو کرنا؛
دوسرے اشارے کے ساتھ مضبوط اور کمزور رجحانات کا اندازہ لگانا ، اور زلزلے سے بچنا۔
مشین سیکھنے کے طریقوں کا استعمال کرتے ہوئے پیرامیٹرز کو خود کار طریقے سے بہتر بنائیں۔
مختلف پیرامیٹرز کی جانچ ، فلٹرنگ کی شرائط میں اضافہ ، اسٹاپ نقصان کی روک تھام کو بہتر بنانا ، رجحانات کا اندازہ لگانے جیسے طریقوں سے حکمت عملی کی استحکام اور منافع میں مزید اضافہ کیا جاسکتا ہے۔
اس حکمت عملی میں متحرک اشارے اور جامد پیرامیٹرز کو کامیابی کے ساتھ جوڑا گیا ہے ، جس میں لچک اور استحکام دونوں شامل ہیں۔ خالص متحرک اور خالص جامد حکمت عملیوں کے مقابلے میں اس حکمت عملی کی مجموعی کارکردگی بہتر ہے۔ یقینا ، ابھی بھی اصلاح کی گنجائش موجود ہے ، حکمت عملی کو بہتر بنانے کے ل parameters پیرامیٹرز کو ایڈجسٹ کرنے ، حالات کو فلٹر کرنے ، خود بخود نقصان سے بچنے اور مشین لرننگ جیسے طریقوں سے بہتر بنایا جاسکتا ہے۔
/*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"}]
*/
//@version=5
strategy("WMA vs MMA Crossover Strategy with SL/TP", shorttitle="WMA_MMA_Cross_SL_TP", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// Définition des périodes pour les moyennes mobiles
wmaLength = input.int(9, title="WMA Length")
mmaLength = input.int(21, title="MMA Length")
// Paramètres de Stop Loss et Take Profit en pourcentage
stopLossPercentage = input.float(5, title="Stop Loss (%)") / 100
takeProfitPercentage = input.float(5, title="Take Profit (%)") / 100
// Calcul des moyennes mobiles
wmaValue = ta.wma(close, wmaLength)
mmaValue = ta.sma(close, mmaLength)
// Conditions pour les signaux d'achat et de vente
buySignal = ta.crossover(wmaValue, mmaValue)
sellSignal = ta.crossunder(wmaValue, mmaValue)
// Génération des ordres en fonction des signaux
if buySignal
strategy.entry("Buy", strategy.long)
strategy.exit("Exit Buy", "Buy", stop=strategy.position_avg_price * (1 - stopLossPercentage), limit=strategy.position_avg_price * (1 + takeProfitPercentage))
if sellSignal
strategy.entry("Sell", strategy.short)
strategy.exit("Exit Sell", "Sell", stop=strategy.position_avg_price * (1 + stopLossPercentage), limit=strategy.position_avg_price * (1 - takeProfitPercentage))
// Affichage des moyennes mobiles sur le graphique
plot(wmaValue, color=color.blue, title="WMA")
plot(mmaValue, color=color.red, title="MMA")
// Affichage des signaux sur le graphique pour référence
plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal", text="BUY")
plotshape(series=sellSignal, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal", text="SELL")