
یہ حکمت عملی ایک خودکار تجارتی نظام ہے جو MACD اشارے پر مبنی ہے ، جس میں متحرک اسٹاپ اور نقصان کا طریقہ کار شامل ہے۔ اس حکمت عملی کا بنیادی مقصد ٹریڈنگ سگنل کو MACD لائن اور سگنل لائن کے کراسنگ کے ذریعے طے کرنا ہے ، جبکہ فیصد اسٹاپ ، ہدف منافع اور ٹریکنگ اسٹاپ نقصان جیسے رسک مینجمنٹ کی خصوصیات کو مربوط کیا گیا ہے۔ یہ حکمت عملی تیزی سے اور آہستہ چلنے والی اوسط کے فرق کو استعمال کرتی ہے تاکہ MACD اشارے کا حساب لگایا جاسکے ، تاکہ سگنل لائنوں کے کراسنگ کے ذریعے مارکیٹ کے رجحان میں تبدیلی کی شناخت کی جاسکے ، اور اسی کے مطابق تجارتی فیصلے کیے جائیں۔
حکمت عملی کی بنیادی منطق میں درج ذیل اہم حصے شامل ہیں:
یہ حکمت عملی MACD اشارے کے کراس سگنل اور ایک بہتر رسک مینجمنٹ سسٹم کے ذریعہ ایک مستحکم خودکار تجارتی نظام تیار کرتی ہے۔ اگرچہ کچھ اصلاحات کی گنجائش موجود ہے ، لیکن بنیادی فریم ورک پہلے ہی کافی ہے ۔ مسلسل اصلاح اور بہتری کے ذریعہ ، اس حکمت عملی کی مختلف مارکیٹ کے ماحول میں مستحکم کارکردگی برقرار رکھنے کی امید ہے۔ جب یہ عملی طور پر لاگو ہوتا ہے تو ، اس کی تجویز کی جاتی ہے کہ پہلے ہی کافی جانچ پڑتال کی جائے اور پیرامیٹرز کی ترتیب کو مارکیٹ کی مخصوص خصوصیات کے مطابق ایڈجسٹ کیا جائے۔
/*backtest
start: 2024-01-01 00:00:00
end: 2024-11-01 00:00:00
period: 12h
basePeriod: 12h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © traderhub
//@version=5
strategy("MACD Strategy with Settings", overlay=true)
// Параметры MACD в контрольной панели
fastLength = input.int(12, title="Fast Length", minval=1, maxval=50)
slowLength = input.int(26, title="Slow Length", minval=1, maxval=50)
signalSmoothing = input.int(9, title="Signal Smoothing", minval=1, maxval=50)
// Параметры риска
stopLossPerc = input.float(1, title="Stop Loss (%)", step=0.1) // Стоп-лосс в процентах
takeProfitPerc = input.float(2, title="Take Profit (%)", step=0.1) // Тейк-профит в процентах
trailStopPerc = input.float(1.5, title="Trailing Stop (%)", step=0.1) // Трейлинг-стоп в процентах
// Вычисляем MACD
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSmoothing)
// Показываем MACD и сигнальную линию на графике
plot(macdLine, color=color.blue, title="MACD Line")
plot(signalLine, color=color.red, title="Signal Line")
hline(0, "Zero Line", color=color.gray)
// Условия для покупки и продажи
longCondition = ta.crossover(macdLine, signalLine) // Покупка при пересечении MACD вверх сигнальной линии
shortCondition = ta.crossunder(macdLine, signalLine) // Продажа при пересечении MACD вниз сигнальной линии
// Расчет стоп-лосса и тейк-профита
var float longStopLevel = na
var float longTakeProfitLevel = na
if (longCondition)
longStopLevel := strategy.position_avg_price * (1 - stopLossPerc / 100)
longTakeProfitLevel := strategy.position_avg_price * (1 + takeProfitPerc / 100)
strategy.entry("Long", strategy.long)
if (strategy.position_size > 0)
// Установка стоп-лосса и тейк-профита
strategy.exit("Take Profit/Stop Loss", "Long", stop=longStopLevel, limit=longTakeProfitLevel, trail_offset=trailStopPerc)
// Закрытие позиции при медвежьем сигнале
if (shortCondition)
strategy.close("Long")
strategy.entry("Short", strategy.short)