এই কৌশলটি ম্যাকডি সূচক ভিত্তিক একটি স্বয়ংক্রিয় ট্রেডিং সিস্টেম, যা গতিশীল স্টপ-লস এবং লাভ গ্রহণের প্রক্রিয়া অন্তর্ভুক্ত করে। মূল কৌশলটি ম্যাকডি লাইন এবং সিগন্যাল লাইন ক্রসওভারের মাধ্যমে ট্রেডিং সংকেতগুলি নির্ধারণ করে, ঝুঁকি পরিচালনার জন্য শতাংশ-ভিত্তিক স্টপ-লস, মুনাফা লক্ষ্য এবং ট্রেলিং স্টপগুলিকে একীভূত করে। কৌশলটি দ্রুত এবং ধীর গতির গড়ের মধ্যে পার্থক্য ব্যবহার করে ম্যাকডি সূচক গণনা করে, সংশ্লিষ্ট ট্রেডিং সিদ্ধান্ত গ্রহণের জন্য সিগন্যাল লাইন ক্রসওভারের মাধ্যমে বাজার প্রবণতা বিপরীত পয়েন্টগুলি সনাক্ত করে।
মূল যুক্তিতে বেশ কয়েকটি মূল উপাদান অন্তর্ভুক্ত রয়েছেঃ
এই কৌশলটি এমএসিডি ক্রসওভার সংকেত এবং বিস্তৃত ঝুঁকি পরিচালনার মাধ্যমে একটি শক্তিশালী স্বয়ংক্রিয় ট্রেডিং সিস্টেম তৈরি করে। অপ্টিমাইজেশনের জন্য জায়গা থাকলেও, প্রাথমিক কাঠামোটি ইতিমধ্যে ভালভাবে বিকশিত। অবিচ্ছিন্ন অপ্টিমাইজেশন এবং উন্নতির মাধ্যমে, কৌশলটি বিভিন্ন বাজারের পরিবেশে স্থিতিশীল কর্মক্ষমতা বজায় রাখার সম্ভাবনা রয়েছে। লাইভ ট্রেডিং বাস্তবায়নের জন্য, পুঙ্খানুপুঙ্খ ব্যাকটেস্টিং পরিচালনা এবং নির্দিষ্ট বাজারের বৈশিষ্ট্য অনুসারে পরামিতিগুলি সামঞ্জস্য করার পরামর্শ দেওয়া হয়।
/*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)