Strategi ini menggunakan pendekatan dagangan harian yang konsisten, memberi tumpuan kepada menangkap sasaran keuntungan kecil sambil mengekalkan pengurusan risiko yang ketat. Strategi ini telah diuji semula dari tahun 2021, menunjukkan prestasi yang kukuh dengan kadar kemenangan 100%. Idea utama strategi ini adalah untuk membuka kedudukan panjang atau pendek baru pada awal setiap hari dagangan berdasarkan keadaan pasaran hari sebelumnya. Parameter utama termasuk sasaran keuntungan 0.3% dan stop loss 0.2%, dengan modal awal $ 1000 dan komisen 0.1% setiap dagangan.
Prinsip utama strategi ini adalah untuk membuka kedudukan panjang atau pendek baru pada awal setiap hari dagangan berdasarkan trend pasaran pada hari dagangan sebelumnya. Khususnya, jika tidak ada kedudukan pada hari sebelumnya, strategi akan membuka kedudukan panjang pada awal hari baru. Jika sudah ada kedudukan panjang, strategi memeriksa sama ada sasaran keuntungan 0.3% telah dicapai dan menutup kedudukan jika ia telah. Untuk kedudukan pendek, strategi memeriksa sama ada stop loss 0.2% telah dicapai, dan jika ya, ia menutup kedudukan pendek dan pada masa yang sama membuka kedudukan panjang baru untuk menggantikannya. Ini memastikan bahawa strategi sentiasa mengekalkan pendedahan kepada pasaran.
Strategi dagangan harian ini mempunyai beberapa kelebihan yang ketara:
Walaupun prestasi yang mengagumkan dan kawalan risiko yang ditunjukkan oleh strategi, terdapat beberapa risiko berpotensi untuk dipertimbangkan:
Untuk mengurangkan risiko ini, kepelbagaian boleh dipertimbangkan dengan menggunakan strategi yang sama di pasaran dan kelas aset yang berbeza. Pemantauan dan penyesuaian parameter strategi yang tetap juga penting untuk menyesuaikan diri dengan keadaan pasaran yang berubah.
Secara keseluruhan, strategi perdagangan harian ini menawarkan pendekatan yang seimbang untuk perdagangan intraday dengan penekanan yang kuat pada pengurusan risiko dan keuntungan yang konsisten. Ia sesuai untuk pedagang yang mencari metodologi perdagangan yang sistematik dan berdisiplin. Strategi ini telah menunjukkan hasil pengujian semula yang mengagumkan, dengan kadar kemenangan 100% dan pulangan yang disesuaikan dengan risiko yang kukuh. Walau bagaimanapun, penting untuk menyedari bahawa prestasi masa lalu tidak menjamin hasil masa depan, dan menguruskan risiko dan menyesuaikan diri dengan perubahan pasaran adalah penting. Dengan pengoptimuman dan peningkatan lanjut, strategi ini boleh menjadi tambahan yang berharga kepada kotak alat mana-mana peniaga.
/*backtest start: 2023-05-22 00:00:00 end: 2024-05-27 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Daily AUD-JPY Trading", overlay=true, initial_capital=1000, currency="AUD", default_qty_type=strategy.percent_of_equity, default_qty_value=200, commission_type=strategy.commission.percent, commission_value=0.1) // Input parameters profit_target = input(0.3, title="Profit Target (%)") / 100 loss_target = input(0.2, title="Loss Target (%)") / 100 start_year = input(2021, title="Start Year") // Calculate daily open and close new_day = ta.change(time("D")) var float entry_price_long = na var float entry_price_short = na var bool position_long_open = false var bool position_short_open = false // Date check trade_start = timestamp(start_year, 1, 1, 0, 0) if new_day and time >= trade_start // If there was a previous long position, check for profit target if position_long_open current_profit_long = (close - entry_price_long) / entry_price_long if current_profit_long >= profit_target strategy.close("AUD Trade Long", comment="Take Profit Long") position_long_open := false // If there was a previous short position, check for profit target if position_short_open current_profit_short = (entry_price_short - close) / entry_price_short if current_profit_short >= profit_target strategy.close("AUD Trade Short", comment="Take Profit Short") position_short_open := false // Check for daily loss condition for short positions if position_short_open current_loss_short = (close - entry_price_short) / entry_price_short if current_loss_short <= -loss_target strategy.close("AUD Trade Short", comment="Stop Loss Short") position_short_open := false // Open a new long position to replace the stopped short position strategy.entry("AUD Trade Long Replacement", strategy.long) entry_price_long := close position_long_open := true // Open a new long position at the start of the new day if no long position is open if not position_long_open and not position_short_open strategy.entry("AUD Trade Long", strategy.long) entry_price_long := close position_long_open := true // Open a new short position at the start of the new day if no short position is open if not position_short_open and not position_long_open strategy.entry("AUD Trade Short", strategy.short) entry_price_short := close position_short_open := true // Check for continuous profit condition for long positions if position_long_open current_profit_long = (close - entry_price_long) / entry_price_long if current_profit_long >= profit_target strategy.close("AUD Trade Long", comment="Take Profit Long") position_long_open := false // Check for continuous profit condition for short positions if position_short_open current_profit_short = (entry_price_short - close) / entry_price_short if current_profit_short >= profit_target strategy.close("AUD Trade Short", comment="Take Profit Short") position_short_open := false // Plot the entry prices on the chart plot(position_long_open ? entry_price_long : na, title="Entry Price Long", color=color.green, linewidth=2) plot(position_short_open ? entry_price_short : na, title="Entry Price Short", color=color.red, linewidth=2) // Display current profit/loss percentage for long positions var label profit_label_long = na if position_long_open and not na(entry_price_long) current_profit_long = (close - entry_price_long) / entry_price_long * 100 label.delete(profit_label_long) profit_label_long := label.new(x=time, y=high, text="Long P/L: " + str.tostring(current_profit_long, format.percent), style=label.style_label_down, color=color.white, textcolor=color.black,xloc=xloc.bar_time) // Display current profit/loss percentage for short positions var label profit_label_short = na if position_short_open and not na(entry_price_short) current_profit_short = (entry_price_short - close) / entry_price_short * 100 label.delete(profit_label_short) profit_label_short := label.new(x=time, y=high, text="Short P/L: " + str.tostring(current_profit_short, format.percent), style=label.style_label_down, color=color.white, textcolor=color.black,xloc=xloc.bar_time)