এই কৌশলটি বিভিন্ন সময়ের চলমান গড় গণনা করে এবং ট্রেন্ড অনুসরণ করার জন্য ক্রসওভার হিসাবে ক্রয় এবং বিক্রয় সংকেত হিসাবে তাদের ক্রসওভার ব্যবহার করে ট্রেডিং সংকেত উত্পন্ন করে। মূল যুক্তি হ'ল দীর্ঘ সময়ের ট্রেন্ডের বাঁক পয়েন্টগুলি ট্র্যাক করার জন্য একটি স্বল্প সময়ের চলমান গড় ব্যবহার করা।
ট্রেডিং সিগন্যালগুলির পিছনে যুক্তিটি হ'ল স্বল্প সময়ের এমএ দামের পরিবর্তনে দ্রুত প্রতিক্রিয়া জানাতে পারে এবং সর্বশেষ প্রবণতা প্রতিফলিত করতে পারে, যখন দীর্ঘ সময়ের এমএ সামগ্রিক প্রবণতাকে আরও ভালভাবে উপস্থাপন করতে পারে এবং গোলমাল ফিল্টার করতে পারে। যখন স্বল্প সময়ের এমএ দীর্ঘতম এমএ অতিক্রম করে, এটি একটি প্রবণতা বিপরীত নির্দেশ করে, তাই ট্রেডিং সংকেতগুলি ট্রিগার হয়।
এই কৌশলটি সহজ এমএ ক্রসওভারের মাধ্যমে প্রবণতা পরিবর্তনগুলি ধারণ করে। এটি সাধারণ প্রবণতা অনুসরণকারী কৌশলগুলির অন্তর্গত। পেশাদাররা সহজ, সহজেই ব্যবহারযোগ্য এবং প্যারামিটার টিউনিং দ্বারা অভিযোজিত। বিপরীতগুলি হ'ল ধীর প্রতিক্রিয়া এবং মিথ্যা সংকেত। সামগ্রিকভাবে এটির একটি পরিষ্কার যুক্তি রয়েছে এবং এটি আলগো ট্রেডিংয়ের জন্য একটি ভাল সূচনা পয়েন্ট। লাইভ ট্রেডিংয়ের জন্য যথাযথ ঝুঁকি ব্যবস্থাপনা এবং অপ্টিমাইজেশান প্রয়োজন।
/*backtest start: 2023-02-23 00:00:00 end: 2024-02-29 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("MA Crossover Strategy", overlay=true) // Функция для получения скользящего среднего на заданном таймфрейме getMA(source, length, timeframe) => request.security(syminfo.tickerid, timeframe, ta.sma(source, length)) // Вычисляем 200-периодное и 100-периодное скользящее среднее для текущего таймфрейма ma200 = getMA(close, 200, "240") ma100 = getMA(close, 100, "240") // Открываем позицию Long, если 100-периодное скользящее среднее пересекает 200-периодное сверху вниз if (ta.crossover(ma100, ma200)) strategy.entry("Long", strategy.long) // Закрываем позицию Long, если 100-периодное скользящее среднее пересекает 200-периодное сверху вниз if (ta.crossunder(ma100, ma200)) strategy.close("Long") // Открываем позицию Short, если 100-периодное скользящее среднее пересекает 200-периодное сверху вниз if (ta.crossunder(ma100, ma200)) strategy.entry("Short", strategy.short) // Закрываем позицию Short, если 100-периодное скользящее среднее пересекает 200-периодное снизу вверх if (ta.crossover(ma100, ma200)) strategy.close("Short") // Рисуем линии скользящих средних на графике plot(ma200, color=color.blue, linewidth=2, title="200 MA") plot(ma100, color=color.red, linewidth=2, title="100 MA")