
یہ حکمت عملی ایک متحرک تجارتی نظام ہے جس میں متعدد تکنیکی اشارے شامل ہیں اور ایک لچکدار اسٹاپ اور نقصان کا طریقہ کار بھی شامل ہے۔ یہ حکمت عملی بنیادی طور پر مارکیٹ کے رجحانات اور حرکیات کا اندازہ لگانے اور اس کی بنیاد پر تجارتی فیصلے کرنے کے لئے آر ایس آئی ، ای ایم اے اور ایم اے سی ڈی کے تین عام تکنیکی اشارے کے کراس سگنل کا استعمال کرتی ہے۔ اس حکمت عملی میں فنڈ مینجمنٹ اور رسک کنٹرول کو بہتر بنانے کے لئے فی صد اسٹاپ نقصان اور رسک ریٹرن کا تصور بھی متعارف کرایا گیا ہے۔
اس حکمت عملی کا بنیادی اصول یہ ہے کہ متعدد اشارے کے ہم آہنگی کے ذریعے ممکنہ تجارتی مواقع کی نشاندہی کی جائے۔ خاص طور پر:
جب یہ اشارے ایک ہی وقت میں مخصوص شرائط پر پورا اترتے ہیں تو حکمت عملی ٹریڈنگ سگنل کو متحرک کرتی ہے۔ مثال کے طور پر ، جب قلیل مدتی EMA پر طویل مدتی EMA ، RSI سے زیادہ خریدنے کی سطح سے نیچے اور MACD کالم گراف سگنل لائن سے اوپر ہوتا ہے تو ایک سے زیادہ سگنل پیدا ہوتا ہے۔ اس کے برعکس شرائط ایک سے زیادہ سگنل کو متحرک کرتی ہیں۔
اس کے علاوہ ، حکمت عملی میں فی صد اسٹاپ اور نقصان کا طریقہ کار بھی شامل ہے ، جس سے تاجروں کو اپنے خطرے کی ترجیحات کے مطابق مناسب اسٹاپ اور نقصان کی سطح طے کرنے کی اجازت ملتی ہے۔ اس کے علاوہ ، خطرہ منافع کی شرح کا تعارف فنڈ مینجمنٹ کی حکمت عملی کو مزید بہتر بناتا ہے۔
کثیر اشارے کی کراس ڈائنامک ٹریڈنگ اسٹریٹجی ، جس میں آر ایس آئی ، ای ایم اے اور ایم اے سی ڈی جیسے تکنیکی اشارے کا جامع استعمال کیا گیا ہے ، ایک لچکدار اسٹاپ اور نقصان کے طریقہ کار کے ساتھ مل کر ، تاجروں کو ایک جامع تجارتی نظام فراہم کرتا ہے۔ حکمت عملی کی طاقت اس کی مارکیٹ کو متعدد زاویوں سے تجزیہ کرنے کی صلاحیت اور لچکدار رسک مینجمنٹ کے طریقوں میں ہے۔ تاہم ، تمام تجارتی حکمت عملیوں کی طرح ، اس میں بھی زیادہ تجارت اور پیرامیٹرز کی حساسیت جیسے خطرات کا سامنا کرنا پڑتا ہے۔ اسٹریٹجی میں اتار چڑھاؤ کی شرح فلٹرنگ ، متحرک اسٹاپ نقصان اور مشین لرننگ جیسی اصلاحی سمتوں کو متعارف کرانے کے ذریعہ ، اس کی کارکردگی کو مارکیٹ کے مختلف ماحول میں مزید بہتر بنانے کی صلاحیت موجود ہے۔ اس حکمت عملی کو استعمال کرتے وقت ، تاجروں کو احتیاط سے پیرامیٹرز کو ایڈجسٹ کرنے کی ضرورت ہے ، اور مارکیٹ کے تجزیہ اور رسک مینجمنٹ اصولوں کے ساتھ مل کر ، بہترین تجارتی نتائج حاصل کرنے کے لئے۔
/*backtest
start: 2019-12-23 08:00:00
end: 2024-10-12 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Crypto Futures Day Trading with Profit/Limit/Loss", overlay=true, margin_long=100, margin_short=100)
// Parameters for the strategy
rsiPeriod = input.int(14, title="RSI Period")
rsiOverbought = input.int(70, title="RSI Overbought Level")
rsiOversold = input.int(30, title="RSI Oversold Level")
emaShortPeriod = input.int(9, title="Short EMA Period")
emaLongPeriod = input.int(21, title="Long EMA Period")
macdFastLength = input.int(12, title="MACD Fast Length")
macdSlowLength = input.int(26, title="MACD Slow Length")
macdSignalSmoothing = input.int(9, title="MACD Signal Smoothing")
// Parameters for Take Profit, Stop Loss, and Limit
takeProfitPercent = input.float(3, title="Take Profit %", step=0.1) // 3% by default
stopLossPercent = input.float(1, title="Stop Loss %", step=0.1) // 1% by default
limitRiskRewardRatio = input.float(2, title="Risk/Reward Ratio", step=0.1) // Example: 2:1 ratio
// Calculate RSI
rsi = ta.rsi(close, rsiPeriod)
// Calculate EMA (Exponential Moving Average)
emaShort = ta.ema(close, emaShortPeriod)
emaLong = ta.ema(close, emaLongPeriod)
// Calculate MACD
[macdLine, signalLine, _] = ta.macd(close, macdFastLength, macdSlowLength, macdSignalSmoothing)
// Calculate take profit and stop loss levels
takeProfitLong = strategy.position_avg_price * (1 + takeProfitPercent / 100)
stopLossLong = strategy.position_avg_price * (1 - stopLossPercent / 100)
takeProfitShort = strategy.position_avg_price * (1 - takeProfitPercent / 100)
stopLossShort = strategy.position_avg_price * (1 + stopLossPercent / 100)
// Entry conditions for long position
longCondition = ta.crossover(emaShort, emaLong) and rsi < rsiOverbought and macdLine > signalLine
if (longCondition)
strategy.entry("Long", strategy.long)
// Exit conditions for long position based on stop loss and take profit
strategy.exit("Take Profit/Stop Loss Long", from_entry="Long", limit=takeProfitLong, stop=stopLossLong)
// Entry conditions for short position
shortCondition = ta.crossunder(emaShort, emaLong) and rsi > rsiOversold and macdLine < signalLine
if (shortCondition)
strategy.entry("Short", strategy.short)
// Exit conditions for short position based on stop loss and take profit
strategy.exit("Take Profit/Stop Loss Short", from_entry="Short", limit=takeProfitShort, stop=stopLossShort)
// Plot EMA lines on the chart
plot(emaShort, color=color.blue, title="Short EMA (9)")
plot(emaLong, color=color.red, title="Long EMA (21)")
// Plot MACD and signal lines in a separate window
plot(macdLine, color=color.green, title="MACD Line")
plot(signalLine, color=color.orange, title="Signal Line")
// Plot RSI
hline(rsiOverbought, "Overbought", color=color.red)
hline(rsiOversold, "Oversold", color=color.green)
plot(rsi, color=color.purple, title="RSI")