
এই কৌশলটি 99 পিরিয়ডের সরল চলমান গড় ((MA99) এর উপর ভিত্তি করে ট্রেডিং সিগন্যালের বিচার করে। যখন দামটি MA99 স্পর্শ করে তখন পজিশনটি খুলতে পারে, দুটি কে লাইন নিশ্চিত করার প্রয়োজন নেই। এবং ক্ষতি বন্ধ করার জন্য ডায়নামিক স্টপ ব্যবহার করা হয়, অর্থাৎ যখন দামটি MA99 অতিক্রম করে এবং পরবর্তী কে লাইনে নিশ্চিত হয়, তখন প্লেইন পজিশন বন্ধ করা হয়। এই কৌশলটি MA99 এর কাছাকাছি দামের ওঠানামা ক্যাপচার করার জন্য এবং একই সাথে গতিশীল ক্ষতি বন্ধের মাধ্যমে ঝুঁকি নিয়ন্ত্রণ করার জন্য।
MA99 এক্সপোজার এবং ডায়নামিক স্টপ কৌশলটি MA99 এর সাথে দামের সম্পর্কের বিচার করে পজিশন খোলার জন্য এবং ডায়নামিক স্টপ ব্যবহার করে ঝুঁকি নিয়ন্ত্রণের জন্য। এই কৌশলটি সহজ এবং ব্যবহার করা সহজ, মাঝারি এবং দীর্ঘমেয়াদী প্রবণতা অনুসরণ করতে সক্ষম, তবে অস্থির বাজারে ঘন ঘন ব্যবসায়ের সমস্যা হতে পারে। অন্যান্য সূচক ফিল্টারিং, অপ্টিমাইজেশন প্যারামিটার, পজিশন পরিচালনা এবং ব্যয় বিবেচনা করার মতো পদক্ষেপগুলি প্রবর্তন করে এই কৌশলটির কার্যকারিতা এবং স্থায়িত্বকে আরও উন্নত করা যেতে পারে।
/*backtest
start: 2023-04-23 00:00:00
end: 2024-04-28 00:00:00
period: 1d
basePeriod: 1h
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/
//@version=5
strategy("MA99 Temas ve Dinamik Stop-Loss Stratejisi", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// MA99 hesaplayalım
ma99 = ta.sma(close, 99)
plot(ma99, color=color.blue, title="MA99")
// Fiyatın MA99'a temas edip etmediğini kontrol edelim
priceTouchedMA99 = (low <= ma99 and high >= ma99)
// Long ve short koşullarını tanımlayalım
longCondition = priceTouchedMA99 and close > ma99
shortCondition = priceTouchedMA99 and close < ma99
var float longStopLoss = na
var float shortStopLoss = na
var int longStopTriggered = 0
var int shortStopTriggered = 0
// Alım veya satım sinyallerine göre işlemleri başlatalım ve stop-loss ayarlayalım
if (longCondition)
strategy.entry("Long Entry", strategy.long)
longStopLoss := ma99
longStopTriggered := 0
if (shortCondition)
strategy.entry("Short Entry", strategy.short)
shortStopLoss := ma99
shortStopTriggered := 0
// Stop-loss koşullarını ve iki mum kuralını kontrol edelim
if (not na(longStopLoss))
if (close < longStopLoss)
longStopTriggered := 1
else
longStopTriggered := 0
if (longStopTriggered[1] == 1 and close < longStopLoss) // Bir önceki mumda tetiklendi ve hala altında
strategy.close("Long Entry", comment="Stop Loss Long")
longStopLoss := na
longStopTriggered := 0
if (not na(shortStopLoss))
if (close > shortStopLoss)
shortStopTriggered := 1
else
shortStopTriggered := 0
if (shortStopTriggered[1] == 1 and close > shortStopLoss) // Bir önceki mumda tetiklendi ve hala üstünde
strategy.close("Short Entry", comment="Stop Loss Short")
shortStopLoss := na
shortStopTriggered := 0