Chiến lược phân chia tương lai Hearst

SMA
Ngày tạo: 2024-04-29 13:58:06 sửa đổi lần cuối: 2024-04-29 13:58:06
sao chép: 2 Số nhấp chuột: 903
1
tập trung vào
1617
Người theo dõi

Chiến lược phân chia tương lai Hearst

Tổng quan

Chiến lược đường phân giới tương lai của Herst là một chiến lược giao dịch dựa trên khái niệm đường phân giới tương lai (Future Line of Demarcation, FLD) do J.M. Herst đưa ra vào những năm 1970. Chiến lược này dự đoán xu hướng giá trong tương lai bằng cách vẽ một đường đơn giản nhưng có ý nghĩa sâu sắc trên biểu đồ tài chính, tức là dịch chuyển dữ liệu giá lên phía trước một nửa chu kỳ trên đường thời gian.

Nguyên tắc chiến lược

Cốt lõi của chiến lược đường phân chia tương lai của Herst là chuyển dữ liệu giá sang phía trước một nửa chu kỳ trên đường thời gian để xây dựng đường phân chia tương lai (FLD). Ví dụ, trong trường hợp chu kỳ 40 ngày, FLD sẽ được thể hiện bằng cách chuyển dữ liệu giá hiện tại sang phía trước 20 ngày trên biểu đồ. Chiến lược này tập trung chủ yếu vào ba chu kỳ Herst: chu kỳ tín hiệu (20 ngày mặc định), chu kỳ giao dịch (20 ngày mặc định) và chu kỳ xu hướng (80 ngày mặc định).

Lợi thế chiến lược

Những ưu điểm chính của chiến lược phân chia trong tương lai của Hurst là:

  1. Đơn giản và dễ hiểu: Chiến lược này dựa trên khái niệm FLD đơn giản, dễ hiểu và dễ áp dụng.
  2. Tính tiên đoán: Bằng cách chuyển dữ liệu giá về phía trước, FLD cung cấp dự đoán về xu hướng giá trong tương lai.
  3. Phân tích đa chu kỳ: Chiến lược này kết hợp ba chu kỳ Hearst khác nhau để cung cấp phân tích thị trường toàn diện hơn.
  4. Xác định xu hướng và kết hợp: Bằng cách quan sát mô hình tương tác của giá với đường FLD, nhà giao dịch có thể đánh giá xu hướng hoặc kết hợp của thị trường.
  5. Tính tùy chỉnh: Chiến lược này cung cấp các kích hoạt vị trí cân bằng có thể điều chỉnh, người giao dịch có thể thiết lập điểm rút lui theo sở thích của mình.

Rủi ro chiến lược

Mặc dù có những lợi thế của chiến lược phân chia trong tương lai của Hurst, nhưng cũng có một số rủi ro tiềm ẩn:

  1. Tính nhạy cảm tham số: Hiệu suất của chiến lược có thể nhạy cảm với các tham số như độ dài chu kỳ, và các thiết lập tham số khác nhau có thể dẫn đến kết quả khác nhau.
  2. Thị trường thích ứng: Chiến lược này có thể không hoạt động tốt trong một số điều kiện thị trường, chẳng hạn như thị trường có xu hướng không rõ ràng hoặc biến động mạnh.
  3. Sự chậm trễ: Vì FLD được tính toán dựa trên dữ liệu lịch sử, nên có thể có một sự chậm trễ.
  4. Quá nhiều giao dịch: Nếu thiết lập kích hoạt giao dịch không đúng, có thể dẫn đến quá nhiều giao dịch và chi phí giao dịch cao.

Để giảm thiểu những rủi ro này, các nhà giao dịch có thể xem xét tối ưu hóa các tham số, điều chỉnh chiến lược cho các điều kiện thị trường khác nhau và thiết lập các biện pháp quản lý rủi ro và dừng lỗ thích hợp.

Hướng tối ưu hóa chiến lược

Chiến lược phân chia của Hurst trong tương lai có thể được tối ưu hóa trong các lĩnh vực sau:

  1. Tối ưu hóa tham số: Tối ưu hóa các tham số như độ dài chu kỳ, kích hoạt thanh toán để cải thiện hiệu suất của chiến lược.
  2. Phân tích nhiều khung thời gian: áp dụng chiến lược này cho các khung thời gian khác nhau để có được cái nhìn toàn diện hơn về thị trường.
  3. Kết hợp với các chỉ số khác: Kết hợp FLD với các chỉ số kỹ thuật khác (như trung bình di chuyển, dao động) để tăng độ tin cậy của tín hiệu.
  4. Quản lý rủi ro: giới thiệu các cơ chế quản lý lỗ hổng và vị trí để kiểm soát rủi ro và tối ưu hóa lợi nhuận.
  5. Khả năng thích ứng với thị trường: phát triển các chương trình tối ưu hóa phù hợp với các điều kiện thị trường khác nhau (như xu hướng, biến động, v.v.).

Thông qua các biện pháp tối ưu hóa này, chiến lược phân chia của Hearst trong tương lai có thể thích ứng tốt hơn với các môi trường thị trường khác nhau, tăng sự ổn định và lợi nhuận của nó.

Tóm tắt

Chiến lược đường phân giới tương lai của Herst là một chiến lược giao dịch sáng tạo dựa trên khái niệm đường phân giới tương lai của J.M. Herst. Chiến lược này cung cấp dự đoán về xu hướng giá trong tương lai bằng cách đưa dữ liệu giá về phía trước một nửa chu kỳ, xây dựng đường phân giới tương lai, và kết hợp ba chu kỳ Herst khác nhau: chu kỳ tín hiệu, chu kỳ giao dịch và chu kỳ xu hướng. Chiến lược này cung cấp cho các nhà giao dịch các cơ hội và công cụ độc đáo để nắm bắt thị trường và thị trường.

Mã nguồn chiến lược
/*backtest
start: 2024-04-27 00:00:00
end: 2024-04-28 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © BarefootJoey

//@version=5
strategy("Hurst Future Lines of Demarcation Strategy", overlay=true)

// FLD Settings
source      = input(ohlc4, 'Source')
smoothFLD   = input.bool(false, 'Smooth FLD')
FLDtransp   = input(33, 'FLD transparency')
FLDsmooth   = input.int(5, "FLD Smoothing", minval=1, tooltip="Number of trading days to smooth the FLD")   
FLD_out = ta.sma(source , smoothFLD ? FLDsmooth : 1)

close_buy_in_1 = input.string('Price', 'Input Close Trigger 1', options=['Price', 'Signal', 'Trade', 'Trend', 'None'])
close_buy_in_2 = input.string('Trade', 'Input Close Trigger 2', options=['Price', 'Signal', 'Trade', 'Trend', 'None'])

// Quarter Cycle (Default: 20 day) Length Pivot Cycle
col_q = input.color(#da00ff, "Quarter Cycle Color")
cyc_q = input.int(5, "Signal Cycle Length")
plot(FLD_out, color=color.new(col_q, FLDtransp), title='Signal FLD', offset = math.round(cyc_q/2) )

// Trade Cycle (Default: 20 day) Length Pivot Cycle
col = input.color(#ff9800, "Trade Cycle Color")
cyc = input.int(20, "Trade Cycle Length")
plot(FLD_out, color=color.new(col, FLDtransp), title='Trade FLD', offset = math.round(cyc/2) )

// Double Cycle (Default: 80 day) Length Pivot Cycle
col_d = input.color(color.aqua, "Double Cycle Color")
cyc_d = input.int(80, "Trend Cycle Length")
plot(FLD_out, color=color.new(col_d, FLDtransp), title='Trend FLD', offset = math.round(cyc_d/2) )

// Strategy Plots
price = source
signal = FLD_out[math.round(cyc_q/2)]
trade = FLD_out[math.round(cyc/2)]
trend = FLD_out[math.round(cyc_d/2)]

// Trend State
var state = 0
if signal > trade and trade > trend 
    state := 1 // (A)
    state
if state == 1 and price < signal
    state := 2 // (B)
    state
if signal < trade and trade > trend 
    state := 3 // (C)
    state
if state == 3 and price < signal 
    state := 4 // (D)
    state
if signal < trade and trade < trend 
    state := 5 // (E)
    state
if state == 5 and price < signal
    state := 6 // (F)
    state
if signal > trade and trade < trend
    state := 7 // (G)
    state
if state == 7 and price < signal
    state := 8 // (H)
    state
state := state

// Strategy Definitions
close_buy_out_1 = close_buy_in_1 == 'Price' ? price : close_buy_in_1 == 'Signal' ? signal : close_buy_in_1 == 'Trade' ? trade : close_buy_in_1 == 'Trend' ? trend : na
close_buy_out_2 = close_buy_in_2 == 'Price' ? price : close_buy_in_2 == 'Signal' ? signal : close_buy_in_2 == 'Trade' ? trade : close_buy_in_2 == 'Trend' ? trend : na
buy = ta.crossover(price, signal) and state == 1
close_buy = strategy.position_size>0 and ta.crossunder(close_buy_out_1, close_buy_out_2)
sell = ta.crossunder(price, signal) and state == 6
close_sell = strategy.position_size<0 and ta.crossover(close_buy_out_1, close_buy_out_2)

// FLD Interaction State Background
interaction_color = state == 1 ? color.green : // A
  state == 2 ? color.aqua : // B
  state == 3 ? color.blue : // C
  state == 4 ? color.purple : // D
  state == 5 ? color.white : // E
  state == 6 ? color.red :// F
  state == 7 ? color.orange : // G
  state == 8 ? color.yellow : na // H

bgcolor(color.new(interaction_color, 90), title= "A-H Background")

bar_color = strategy.position_size>0 ? #00ff0a : strategy.position_size<0 ? #FF0000 : na
barcolor(bar_color)

if buy
    strategy.entry("Buy", strategy.long)
if close_buy
    strategy.close("Buy", qty_percent=100)

if sell
    strategy.entry("Sell", strategy.short)
if close_sell
    strategy.close("Sell", qty_percent=100)

// EoS made w/ ❤ by @BarefootJoey ✌💗📈