
এই কৌশলটি একটি গতিশীলতা ভিত্তিক ট্রেডিং সিস্টেম, যা মূলত 4 ঘন্টা সময়কালের মধ্যে ভারসাম্য শক্তির সূচক ব্যবহার করে। এটি ক্রেতা এবং বিক্রেতার শক্তির তুলনা পরিমাপ করে এবং যখন সূচকটি পূর্বনির্ধারিত থ্রেশহোল্ডটি ভেঙে দেয় তখন একটি ট্রেডিং সংকেত ট্রিগার করে। কৌশলটিতে গতিশীল অবস্থান পরিচালনা, সামঞ্জস্যযোগ্য লিভারেজ এবং ভিজ্যুয়াল ট্রেড ট্র্যাকিংয়ের মতো বৈশিষ্ট্য রয়েছে, যা কার্যকরভাবে বাজারের প্রবণতা ঘূর্ণায়মান পয়েন্টগুলিকে ক্যাপচার করতে পারে।
কৌশলটির মূলটি হল ((ক্লোজিং প্রাইস-ক্লোজিং প্রাইস) / ((সর্বোচ্চ প্রাইস-নিম্ন প্রাইস) গণনা করে বাজারের ক্রয়-বিক্রয় শক্তির ভারসাম্য পরিমাপ করা। যখন এই মানটি 1 এর কাছাকাছি আসে তখন দৃ strong় মুদ্রাস্ফীতির শক্তি এবং যখন এটি -1 এর কাছাকাছি আসে তখন দৃ strong় মুদ্রাস্ফীতির চাপ। নির্দিষ্ট ট্রেডিং লজিকটি নিম্নরূপঃ
এই কৌশলটি বাজারের গতিশীলতার পরিবর্তনকে সামঞ্জস্যপূর্ণ শক্তির সূচকের মাধ্যমে ক্যাপচার করে, গতিশীল পজিশন ম্যানেজমেন্ট এবং ঝুঁকি নিয়ন্ত্রণের সাথে মিলিত হয়, একটি অপেক্ষাকৃত সম্পূর্ণ ট্রেডিং সিস্টেম তৈরি করে। যদিও কিছু ঝুঁকি রয়েছে, তবে কৌশলটির স্থিতিশীলতা এবং লাভজনকতা আরও বাড়িয়ে তুলতে পারে ক্রমাগত অপ্টিমাইজেশন এবং পরিমার্জনের মাধ্যমে। এটি গতিশীল ব্যবসায়ের প্রতি আগ্রহী ব্যবসায়ীদের ব্যবহার এবং গবেষণার জন্য উপযুক্ত।
/*backtest
start: 2024-02-25 00:00:00
end: 2025-02-22 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/
//@version=5
strategy(title="Balance of Power for US30 4H", format=format.price, precision=2, default_qty_type=strategy.percent_of_equity, default_qty_value=100, overlay=true, commission_value=0.01, max_labels_count=500, max_lines_count = 500)
leverage = input.float(5, "Leverage 1:", tooltip="Multiply your equity (100%) times the leverage.")
p = (close - open) / (high - low)
qty = strategy.equity * leverage / close
if ta.crossover(p, 0.8)
strategy.entry("L", strategy.long, qty=qty)
if ta.crossunder(p, -0.8)
strategy.close("L")
green = color.new(#0097a7, 0)
red = color.new(#ff195f, 0)
green90 = color.new(#0097a7, 85)
red90 = color.new(#ff195f, 85)
if strategy.position_size > strategy.position_size[1]
label.new(bar_index, low * 0.999, text="▲", textcolor=green, size=size.normal, textalign=text.align_center, color=green90, style=label.style_text_outline)
label.new(bar_index, low * 0.999, text="Buy", textcolor=green, size=size.tiny, textalign=text.align_center, color=green90, style=label.style_label_up)
if strategy.position_size < strategy.position_size[1]
label.new(bar_index, high * 1.001, text="▼", textcolor=red, size=size.normal, textalign=text.align_center, color=red90, style=label.style_text_outline)
label.new(bar_index, high * 1.001, text="Close", textcolor=red, size=size.tiny, textalign=text.align_center, color=red90, style=label.style_label_down)
var float tradeEntryPrice = na
var int tradeEntryBar = na
if strategy.position_size > 0 and strategy.position_size[1] == 0
tradeEntryPrice := close
tradeEntryBar := bar_index
if strategy.position_size == 0 and strategy.position_size[1] > 0
exitPrice = close
exitBar = bar_index
tradeColor = (exitPrice - tradeEntryPrice > 0) ? green : red
topPrice = math.max(tradeEntryPrice, exitPrice)
bottomPrice = math.min(tradeEntryPrice, exitPrice)
box.new(tradeEntryBar, topPrice, exitBar, bottomPrice, border_width=0, bgcolor=color.new(tradeColor, 85))
line.new(tradeEntryBar, topPrice, exitBar, topPrice, color=tradeColor, width=1)
line.new(tradeEntryBar, bottomPrice, exitBar, bottomPrice, color=tradeColor, width=1)