এডিএক্স ফিল্টার সহ মম্পটাম ব্রেকআউট কৌশল

লেখক:চাওঝাং, তারিখঃ 2024-01-04 17:12:30
ট্যাগঃ

img

সারসংক্ষেপ

এটি একটি স্বল্পমেয়াদী ট্রেডিং কৌশল যা ব্রেকআউট সংকেতগুলি ফিল্টার করতে এডিএক্স সূচক ব্যবহার করে। যখন দাম উপরের বোলিংজার ব্যান্ডের উপরে ভাঙ্গবে এবং এডিএক্স হ্রাস পাচ্ছে এবং যখন দাম নিম্ন বোলিংজার ব্যান্ডের নীচে ভাঙ্গবে এবং এডিএক্স বৃদ্ধি পাচ্ছে তখন এটি স্বল্প যায়। কৌশলটি সম্পূর্ণ স্বয়ংক্রিয় ট্রেডিংয়ের জন্য স্বয়ংক্রিয়ভাবে স্টপ লস সেট করে এবং মুনাফা নেয়।

কৌশলগত যুক্তি

এই কৌশলটির মূলটি ব্রেকআউট সংকেতগুলির জন্য বোলিংজার ব্যান্ডগুলি ব্যবহার করছে। বোলিংজার ব্যান্ডগুলির উপরের এবং নীচের ব্যান্ডগুলি দামের দুটি স্ট্যান্ডার্ড বিচ্যুতি উপস্থাপন করে, তাই ব্রেকআউটগুলি সাধারণত বোঝায় যে দামটি একটি শক্তিশালী প্রবণতায় প্রবেশ করছে। এছাড়াও, এডিএক্স সূচকটি এখানে মিথ্যা ব্রেকআউটগুলি এড়ানোর জন্য একটি ফিল্টার হিসাবে চালু করা হয়। সংক্ষিপ্ত সংকেতগুলি কেবল তখনই বিবেচনা করা হয় যখন এডিএক্স হ্রাস পাচ্ছে যখন দীর্ঘ সংকেতগুলি কেবল তখনই বিবেচনা করা হয় যখন এডিএক্স বৃদ্ধি পাচ্ছে। এটি পরিসীমা-সীমাবদ্ধ সময়কালে কিছু উইপসো ফিল্টার করতে সহায়তা করে।

বিশেষত, এই কৌশলটি বোলিংজার ব্যান্ডগুলি বন্ধের দামের 33 টি সময়কাল ব্যবহার করে গণনা করে। মাঝারি ব্যান্ডটি 33 সময়ের সহজ চলমান গড়, এবং উপরের / নীচের ব্যান্ডগুলি মাঝারি ব্যান্ডের উপরে / নীচে দুটি স্ট্যান্ডার্ড বিচ্যুতিতে স্থাপন করা হয়। কৌশলটি শর্ট সংকেত দেয় যখন দামটি উপরের ব্যান্ডের নীচে বন্ধ হয় এবং 8-পরিয়ড এডিএক্স 15-পরিয়ড এডিএক্সের নীচে থাকে। এটি দীর্ঘ সংকেত দেয় যখন দামটি নীচের ব্যান্ডের উপরে বন্ধ হয় এবং 8-পরিয়ড এডিএক্স 15-পরিয়ড এডিএক্সের উপরে থাকে। প্রস্থানগুলি 800 মুনাফা পয়েন্ট এবং 400 পয়েন্ট স্টপ লস সেট করা হয়।

সুবিধা বিশ্লেষণ

প্রবণতা এবং গতি ফিল্টার অন্তর্ভুক্ত একটি ব্রেকআউট কৌশল হিসাবে, এটি বেশ কয়েকটি সুবিধা আছেঃ

  1. ব্রেকআউট সনাক্ত করতে বোলিংজার ব্যান্ড ব্যবহার করা বেশিরভাগ ট্রেডারদের অভ্যাসের সাথে সামঞ্জস্যপূর্ণ।
  2. অতিরিক্ত এডিএক্স ফিল্টার উইপসো থেকে ক্ষতি এড়াতে সাহায্য করে।
  3. যুক্তিটি সহজ এবং বোঝা এবং অপ্টিমাইজ করা সহজ।
  4. স্বয়ংক্রিয় স্টপ লস এবং লাভ গ্রহণ অ্যালগরিদম ট্রেডিংকে সহজ করে তোলে।

ঝুঁকি বিশ্লেষণ

এই কৌশলটির সাথে কিছু ঝুঁকিও রয়েছেঃ

  1. ভুল বিবি পরামিতিগুলি অতিরিক্ত ঘন ঘন সংকেত তৈরি করতে পারে এবং ব্যয় বাড়িয়ে তুলতে পারে।
  2. ভুল ADX পরামিতি বৈধ সংকেত ফিল্টার করতে পারে.
  3. স্টপ লস দূরত্ব খুব বড় হতে পারে যা বড় ক্ষতির দিকে পরিচালিত করে।

এই ঝুঁকিগুলি হ্রাস করার জন্য, আমরা ব্যান্ডগুলি সংকীর্ণ করার জন্য বিবি প্যারামিটারটি সূক্ষ্মভাবে সামঞ্জস্য করতে পারি, অতিরিক্ত ফিল্টারিং এড়ানোর জন্য এডিএক্স সময়কাল সামঞ্জস্য করতে পারি এবং একক বাণিজ্য ক্ষতি নিয়ন্ত্রণের জন্য স্টপ লস হ্রাস করতে পারি। অবশ্যই, এই অপ্টিমাইজেশানগুলি ওভারফিটিং রোধ করতে ওয়াক-ফরোয়ার্ড পরীক্ষা করা দরকার।

অপ্টিমাইজেশান নির্দেশাবলী

আরও অপ্টিমাইজেশনের সুযোগ রয়েছেঃ

  1. সর্বোত্তম প্যারামিটার সেট খুঁজে পেতে বিভিন্ন বাজার তথ্য পরীক্ষা করুন।
  2. সিগন্যাল ফিল্টারিংয়ের জন্য ভলিউম এবং চলমান গড়ের মতো অন্যান্য সূচক অন্তর্ভুক্ত করুন।
  3. স্বয়ংক্রিয়ভাবে প্যারামিটার অপ্টিমাইজ করার জন্য মেশিন লার্নিং পদ্ধতি ব্যবহার করুন।
  4. ডায়নামিক স্টপ লস এবং লভ্যাংশ নিন।

সিদ্ধান্ত

উপসংহারে, এটি ফিল্টার সহ একটি সহজ এবং ব্যবহারিক ব্রেকআউট কৌশল। বিবিগুলির সাথে প্রবণতা সনাক্ত করা এবং এডিএক্সের সাথে সংকেতগুলি ফিল্টার করা পরিসীমা সীমাবদ্ধ সময়ের সময় গোলমাল এড়াতে এবং কিছুটা পরিমাণে প্রবণতার সুযোগগুলি ক্যাপচার করতে সহায়তা করে। আরও পরীক্ষা এবং উন্নতির জন্য এখনও অনেক জায়গা রয়েছে।


/*backtest
start: 2023-12-27 00:00:00
end: 2024-01-03 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Hizbullah XAUUSD Sniper", overlay=true)

Price = close

Length = input(33)
Mult = input(2)
Basis = sma(Price, Length)
StdDev = Mult * stdev(Price, Length)
Upper = Basis + StdDev
Lower = Basis - StdDev

ADX_Length = input(4)
TrueRange = max(max(high-low, abs(high-nz(close[1]))), abs(low-nz(close[1])))
SmoothedTrueRange = sma(TrueRange, ADX_Length)
DirectionalMovementPlus = high-nz(high[1]) > nz(low[1])-low ? max(high-nz(high[1]), 0): 0
DirectionalMovementMinus = nz(low[1])-low > high-nz(high[1]) ? max(nz(low[1])-low, 0): 0
SmoothedDirectionalMovementPlus = sma(DirectionalMovementPlus, ADX_Length)
SmoothedDirectionalMovementMinus = sma(DirectionalMovementMinus, ADX_Length)
DIPlus = SmoothedDirectionalMovementPlus / SmoothedTrueRange * 100
DIMinus = SmoothedDirectionalMovementMinus / SmoothedTrueRange * 100
DX = abs(DIPlus - DIMinus) / (DIPlus + DIMinus)*100
SmoothedADX1 = ema(DX, input(8))
SmoothedADX2 = ema(DX, input(15))

Condition1 = crossunder(Price, Upper) and SmoothedADX1 < SmoothedADX2

Take_Profit = input(800)
Stop_Loss = input(400)

strategy.entry("ShortEntry", true, when = Condition1)
strategy.exit("ShortExit", "ShortEntry", profit = Take_Profit, loss = Stop_Loss)


আরো