এই কৌশলটি একটি ট্রেডিং সিস্টেম যা চলমান গড় ক্রসওভার সংকেতগুলিকে এটিআর-ভিত্তিক ঝুঁকি পরিচালনার সাথে একত্রিত করে। এটি স্টপ-লস এবং লাভের মাত্রা গতিশীলভাবে সামঞ্জস্য করার জন্য এটিআর সূচক ব্যবহার করার সময় দ্রুত এবং ধীর চলমান গড়ের ক্রসওভারের মাধ্যমে বাজারের প্রবণতা ক্যাপচার করে, ট্রেডিং ঝুঁকিগুলির সুনির্দিষ্ট নিয়ন্ত্রণ অর্জন করে। কৌশলটিতে একটি অর্থ পরিচালনার মডিউলও অন্তর্ভুক্ত রয়েছে যা অ্যাকাউন্ট ইক্যুইটি এবং পূর্বনির্ধারিত ঝুঁকি পরামিতিগুলির উপর ভিত্তি করে অবস্থান আকারগুলি স্বয়ংক্রিয়ভাবে সামঞ্জস্য করে।
কৌশলটির মূল যুক্তি নিম্নলিখিত মূল উপাদানগুলির উপর ভিত্তি করেঃ
এই কৌশলটি এমএ ক্রসওভারের মাধ্যমে প্রবণতা ক্যাপচার করে এবং একটি সম্পূর্ণ ট্রেন্ড অনুসরণকারী ট্রেডিং সিস্টেম তৈরি করতে এটিআর গতিশীল ঝুঁকি নিয়ন্ত্রণকে একত্রিত করে। কৌশলটির শক্তিগুলি এর অভিযোজনযোগ্যতা এবং ঝুঁকি নিয়ন্ত্রণের ক্ষমতাতে রয়েছে, যদিও এটি অস্থির বাজারে কম পারফর্ম করতে পারে। প্রবণতা ফিল্টারগুলি যুক্ত করে এবং অর্থ পরিচালনা সিস্টেমের অপ্টিমাইজেশনের মাধ্যমে কৌশলটির সামগ্রিক পারফরম্যান্সের উন্নতির সুযোগ রয়েছে।
/*backtest start: 2024-12-06 00:00:00 end: 2025-01-04 08:00:00 period: 3h basePeriod: 3h 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/ // © davisash666 //@version=5 strategy("Trend-Following Strategy", overlay=true) // Inputs for strategy parameters timeframe = input.timeframe("D", "Timeframe") risk_tolerance = input.float(2.0, "Risk Tolerance (%)", step=0.1) / 100 capital_allocation = input.float(200, "Capital Allocation (%)", step=1) / 100 // Technical indicators (used to emulate machine learning) ma_length_fast = input.int(10, "Fast MA Length") ma_length_slow = input.int(50, "Slow MA Length") atr_length = input.int(14, "ATR Length") atr_multiplier = input.float(1.5, "ATR Multiplier") // Calculations fast_ma = ta.sma(close, ma_length_fast) slow_ma = ta.sma(close, ma_length_slow) atr = ta.atr(atr_length) // Entry and exit conditions long_condition = ta.crossover(fast_ma, slow_ma) short_condition = ta.crossunder(fast_ma, slow_ma) // Risk management stop_loss_long = close - (atr * atr_multiplier) stop_loss_short = close + (atr * atr_multiplier) take_profit_long = close + (atr * atr_multiplier) take_profit_short = close - (atr * atr_multiplier) // Capital allocation position_size = strategy.equity * capital_allocation // Execute trades if long_condition strategy.entry("Long", strategy.long, qty=position_size / close) strategy.exit("Take Profit/Stop Loss", "Long", stop=stop_loss_long, limit=take_profit_long) if short_condition strategy.entry("Short", strategy.short, qty=position_size / close) strategy.exit("Take Profit/Stop Loss", "Short", stop=stop_loss_short, limit=take_profit_short) // Plotting for visualization plot(fast_ma, color=color.green, title="Fast MA") plot(slow_ma, color=color.red, title="Slow MA") plot(stop_loss_long, color=color.blue, title="Stop Loss (Long)", linewidth=1, style=plot.style_cross) plot(take_profit_long, color=color.purple, title="Take Profit (Long)", linewidth=1, style=plot.style_cross)