Versi lanjutan sistem perdagangan harga purata berwajaran tanpa bayangan dan purata K-line

VWAP HA SL TP IST ATR
Tarikh penciptaan: 2025-02-21 14:49:07 Akhirnya diubah suai: 2025-02-21 14:49:07
Salin: 0 Bilangan klik: 423
2
fokus pada
319
Pengikut

Versi lanjutan sistem perdagangan harga purata berwajaran tanpa bayangan dan purata K-line Versi lanjutan sistem perdagangan harga purata berwajaran tanpa bayangan dan purata K-line

Gambaran keseluruhan

Ini adalah sistem perdagangan automatik berdasarkan purata K line tanpa bayangan ((Heikin-Ashi) dan harga purata bertimbangan dengan kuantiti transaksi ((VWAP)). Strategi ini menggunakan identifikasi bentuk K line tertentu, digabungkan dengan VWAP sebagai tahap sokongan / rintangan yang dinamik, untuk melakukan pembelian dan penjualan dalam masa perdagangan yang ditetapkan. Sistem ini menggunakan risiko pengurusan titik stop loss yang tetap, dan memaksa kedudukan kosong pada waktu tertentu setiap hari untuk mengelakkan risiko semalaman.

Prinsip Strategi

Logik teras strategi adalah berdasarkan elemen utama berikut:

  1. Garis K Heikin-Ashi digunakan sebagai ganti garis K tradisional untuk mengenal pasti trend pasaran dengan cara mengira purata harga pembukaan, harga tertinggi, harga terendah dan harga penutupan.
  2. Syarat pembelian: Garis hijau Heikin-Ashi K (Garis Tanpa Bayangan) terbentuk dan harga terletak di atas VWAP.
  3. Syarat Jual: Garis merah Heikin-Ashi K (Garis Tanpa Bayangan) terbentuk dan harga berada di bawah VWAP.
  4. Menggunakan sasaran penangguhan 50 mata yang tetap, dan menyentuh harga kos adalah imbang.
  5. Memaksa semua kedudukan yang belum diikat pada 15:01.

Kelebihan Strategik

  1. Gabungan Heikin-Ashi dan VWAP, dua penunjuk teknikal yang kuat, meningkatkan kebolehpercayaan isyarat perdagangan.
  2. Syarat tanpa wayar memastikan isyarat pengesahan trend yang lebih kuat.
  3. Penangguhan pegangan yang tetap membantu mengawal risiko yang ketat.
  4. Strategi dagangan dalam hari mengelakkan risiko bermalam.
  5. Sistem ini sepenuhnya automatik dan mengurangkan gangguan emosi manusia.

Risiko Strategik

  1. Titik stop loss yang ditetapkan mungkin tidak sesuai untuk semua keadaan pasaran, terutamanya apabila turun naik berlaku.
  2. Mempunyai tempoh penutupan tertakluk boleh menyebabkan kegagalan untuk meneruskan.
  3. Keperluan yang ketat untuk talian tanpa bayangan boleh menyebabkan kehilangan beberapa peluang dagangan yang berkesan.
  4. Dalam pasaran Forex, isyarat palsu sering berlaku.
  5. Nilai rujukan VWAP mungkin menurun semasa jumlah dagangan rendah.

Arah pengoptimuman strategi

  1. Memperkenalkan ATR untuk menyesuaikan kedudukan stop loss secara dinamik, menjadikan strategi lebih sesuai dengan turun naik pasaran.
  2. Menambah penapis trend untuk mengurangkan isyarat palsu di pasaran horizontal.
  3. Optimumkan masa penyelesaian, boleh disesuaikan dengan dinamik ciri pasaran.
  4. Menambah penapis jumlah transaksi untuk meningkatkan kebolehpercayaan VWAP.
  5. Ia juga boleh digunakan untuk menjejaki kerugian dan melindungi keuntungan.

ringkaskan

Strategi ini membina sistem dagangan dalam sehari yang mantap dengan menggabungkan indikator Heikin-Ashi dan VWAP. Walaupun terdapat beberapa ruang untuk pengoptimuman, kerangka asas mempunyai kepraktisan yang baik. Dengan arah pengoptimuman yang dicadangkan, strategi ini dijangka dapat mencapai prestasi yang lebih baik dalam keadaan pasaran yang berbeza.

Kod sumber strategi
/*backtest
start: 2024-07-16 00:00:00
end: 2025-02-19 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/

//@version=5
strategy("Buy and Sell Signal with VWAP and Timed Exit", overlay=true)

// VWAP Calculation
vwap = ta.vwap(close)

// Heikin-Ashi Formula
var float heikin_open = na
var float heikin_close = na

heikin_open := na(heikin_open[1]) ? (open + close) / 2 : (heikin_open[1] + heikin_close[1]) / 2
heikin_close := (open + high + low + close) / 4
heikin_high = math.max(high, math.max(heikin_open, heikin_close))
heikin_low = math.min(low, math.min(heikin_open, heikin_close))

// Conditions for Sell (Red Heikin-Ashi with no upper shadow) and Buy (Green Heikin-Ashi with no lower shadow)
no_upper_shadow = heikin_high == math.max(heikin_open, heikin_close)
no_lower_shadow = heikin_low == math.min(heikin_open, heikin_close)

// Condition for red (sell) and green (buy) Heikin-Ashi candles
is_red_candle = heikin_close < heikin_open
is_green_candle = heikin_close > heikin_open

// Buy and Sell Signal Conditions
sell_signal = is_red_candle and no_upper_shadow and close < vwap
buy_signal = is_green_candle and no_lower_shadow and close > vwap

// Check current time (for 15:01 IST)
is_after_1501 = (hour == 15 and minute > 1) or (hour > 15)

// Check for open positions
open_sell_position = strategy.position_size < 0
open_buy_position = strategy.position_size > 0

// Trigger Sell order only if no open sell position exists and time is before 15:01, and price is below VWAP
if sell_signal and not open_sell_position and not is_after_1501
    strategy.entry("Sell", strategy.short)

// Trigger Buy order only if no open buy position exists and time is before 15:01, and price is above VWAP
if buy_signal and not open_buy_position and not is_after_1501
    strategy.entry("Buy", strategy.long)

// Define exit condition for Sell (opposite of Buy conditions)
exit_sell_condition = false

if open_sell_position
    entry_price = strategy.position_avg_price  // Get the average entry price for Sell
    current_price = close  // Current market price for Sell

    // Exit conditions for Sell
    exit_sell_condition := current_price > entry_price or entry_price - current_price >= 50

    // Exit if conditions are met
    if exit_sell_condition
        strategy.close("Sell")

// Define exit condition for Buy (opposite of Sell conditions)
exit_buy_condition = false

if open_buy_position
    entry_price = strategy.position_avg_price  // Get the average entry price for Buy
    current_price = close  // Current market price for Buy

    // Exit conditions for Buy
    exit_buy_condition := current_price < entry_price or current_price - entry_price >= 50

    // Exit if conditions are met
    if exit_buy_condition
        strategy.close("Buy")

// Exit at 15:01 IST for both Buy and Sell if not already exited
if (open_sell_position or open_buy_position) and (hour == 15 and minute == 1)
    strategy.close("Sell")
    strategy.close("Buy")

// Plot VWAP
plot(vwap, color=color.blue, linewidth=2, title="VWAP")

// Plot Heikin-Ashi Candles
plotcandle(heikin_open, heikin_high, heikin_low, heikin_close, color = is_red_candle ? color.red : (is_green_candle ? color.green : color.gray))

// Plot Sell signal on the chart
plotshape(sell_signal and not open_sell_position and not is_after_1501, style=shape.labeldown, location=location.abovebar, color=color.red, text="SELL", size=size.small)

// Plot Buy signal on the chart
plotshape(buy_signal and not open_buy_position and not is_after_1501, style=shape.labelup, location=location.belowbar, color=color.green, text="BUY", size=size.small)

// Plot Exit signals on the chart
plotshape(exit_sell_condition and open_sell_position, style=shape.labelup, location=location.belowbar, color=color.blue, text="EXIT SELL", size=size.small)
plotshape(exit_buy_condition and open_buy_position, style=shape.labeldown, location=location.abovebar, color=color.blue, text="EXIT BUY", size=size.small)