এই কৌশলটি দ্বৈত চলমান গড়ের উপর ভিত্তি করে একটি বুদ্ধিমান প্রবণতা অনুসরণকারী সিস্টেম, যা ঝুঁকি ব্যবস্থাপনার জন্য গতিশীল মুনাফা গ্রহণ এবং স্টপ-লস প্রক্রিয়াগুলির সাথে মিলিত হোল্ডিং সূচকগুলির সাথে উচ্চ এবং নিম্নের চলমান গড় গণনা করে বাজারের প্রবণতা সনাক্ত করে। কৌশলটির মূলটি হ'ল প্রবণতা অনুসরণ এবং ঝুঁকি নিয়ন্ত্রণের একটি জৈবিক সমন্বয় অর্জন করে মুনাফা লক করতে ট্রেইলিং স্টপ ব্যবহার করার সময় হোল্ডিং থ্রেশহোল্ডের মাধ্যমে মিথ্যা সংকেতগুলি ফিল্টার করা।
কৌশলটি তার মূল ট্রেডিং লজিক হিসাবে একটি দ্বৈত চলমান গড় সিস্টেম ব্যবহার করে, উচ্চ এবং নিম্ন উভয় মূল্য সিরিজের চলমান গড় গণনা করে। দীর্ঘ সংকেতগুলি উত্পন্ন হয় যখন মূল্য উল্লেখযোগ্যভাবে ইতিবাচক ঢাল সহ উপরের গড়ের উপরে ভঙ্গ করে, যখন মূল্য উল্লেখযোগ্যভাবে নেতিবাচক ঢাল সহ নিম্ন গড়ের নীচে ভঙ্গ করে তখন সংক্ষিপ্ত সংকেতগুলি ঘটে। দোলনশীল বাজারে ঘন ঘন ট্রেডিং এড়াতে, কৌশলটি একটি ঢাল থ্রেশহোল্ড প্রক্রিয়া অন্তর্ভুক্ত করে, কেবলমাত্র যখন চলমান গড় ঢাল পরিবর্তন সেট থ্রেশহোল্ড অতিক্রম করে তখনই প্রবণতার বৈধতা নিশ্চিত করে। ঝুঁকি ব্যবস্থাপনার জন্য, কৌশলটি গতিশীল মুনাফা গ্রহণ এবং স্টপ-লস প্রক্রিয়া বাস্তবায়ন করে, প্রাথমিকভাবে আগ্রাসী মুনাফার লক্ষ্যমাত্রা ব্যবহার করে এবং অর্জিত মুনাফা রক্ষা করার জন্য ট্রেলিং স্টপগুলি সেট করে।
এটি একটি পরিমাণগত ট্রেডিং কৌশল যা প্রবণতা অনুসরণ এবং ঝুঁকি ব্যবস্থাপনাকে জৈবিকভাবে একত্রিত করে। একটি দ্বৈত চলমান গড় সিস্টেম এবং ঢালের প্রান্তিকের সহযোগিতার মাধ্যমে, কৌশলটি সঠিকভাবে বাজারের প্রবণতা ক্যাপচার করতে পারে, যখন গতিশীল মুনাফা গ্রহণ এবং স্টপ-লস প্রক্রিয়াগুলি বিস্তৃত ঝুঁকি নিয়ন্ত্রণ সরবরাহ করে। যদিও প্যারামিটার নির্বাচন এবং বাজারের অভিযোজনযোগ্যতার উন্নতির জন্য জায়গা রয়েছে, তবে এর স্পষ্ট যৌক্তিক কাঠামো এবং নমনীয় প্যারামিটার সিস্টেম পরবর্তী অপ্টিমাইজেশনের জন্য একটি ভাল ভিত্তি সরবরাহ করে। লাইভ ট্রেডিংয়ে কৌশলটি প্রয়োগ করার সময় ব্যবসায়ীদের নির্দিষ্ট বাজারের বৈশিষ্ট্য এবং তাদের নিজস্ব ঝুঁকি পছন্দ অনুসারে বিভিন্ন প্যারামিটারগুলি পুরোপুরি ব্যাকটেস্ট এবং অপ্টিমাইজ করার পরামর্শ দেওয়া হয়।
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("SMA Buy/Sell Strategy with Significant Slope", overlay=true) // Parametri configurabili smaPeriod = input.int(20, title="SMA Period", minval=1) initialTPPercent = input.float(5.0, title="Initial Take Profit (%)", minval=0.1) // Take Profit iniziale (ambizioso) trailingSLPercent = input.float(1.0, title="Trailing Stop Loss (%)", minval=0.1) // Percentuale di trailing SL slopeThreshold = input.float(0.05, title="Slope Threshold (%)", minval=0.01) // Soglia minima di pendenza significativa // SMA calcolate su HIGH e LOW smaHigh = ta.sma(high, smaPeriod) smaLow = ta.sma(low, smaPeriod) // Funzioni per pendenza significativa isSignificantSlope(sma, threshold) => math.abs(sma - sma[5]) / sma[5] > threshold / 100 slopePositive(sma) => sma > sma[1] and isSignificantSlope(sma, slopeThreshold) slopeNegative(sma) => sma < sma[1] and isSignificantSlope(sma, slopeThreshold) // Condizioni di BUY e SELL buyCondition = close > smaHigh and low < smaHigh and close[1] < smaHigh and slopePositive(smaHigh) sellCondition = close < smaLow and high > smaLow and close[1] > smaLow and slopeNegative(smaLow) // Plot delle SMA plot(smaHigh, color=color.green, linewidth=2, title="SMA 20 High") plot(smaLow, color=color.red, linewidth=2, title="SMA 20 Low") // Gestione TP/SL dinamici longInitialTP = strategy.position_avg_price * (1 + initialTPPercent / 100) shortInitialTP = strategy.position_avg_price * (1 - initialTPPercent / 100) // Trailing SL dinamico longTrailingSL = close * (1 - trailingSLPercent / 100) shortTrailingSL = close * (1 + trailingSLPercent / 100) // Chiusura di posizioni attive su segnali opposti if strategy.position_size > 0 and sellCondition strategy.close("Buy", comment="Close Long on Sell Signal") if strategy.position_size < 0 and buyCondition strategy.close("Sell", comment="Close Short on Buy Signal") // Apertura di nuove posizioni con TP iniziale e Trailing SL if buyCondition strategy.entry("Buy", strategy.long, comment="Open Long") strategy.exit("Long TP/Trailing SL", from_entry="Buy", limit=longInitialTP, stop=longTrailingSL) if sellCondition strategy.entry("Sell", strategy.short, comment="Open Short") strategy.exit("Short TP/Trailing SL", from_entry="Sell", limit=shortInitialTP, stop=shortTrailingSL)