Chiến lược đột phá xu hướng đảo ngược


Ngày tạo: 2023-10-07 16:15:43 sửa đổi lần cuối: 2023-10-07 16:15:43
sao chép: 0 Số nhấp chuột: 725
1
tập trung vào
1617
Người theo dõi

Tổng quan

Chiến lược phá vỡ xu hướng đảo ngược là một chiến lược kết hợp các ưu điểm của chiến lược đảo ngược và chiến lược phá vỡ nhằm phát ra tín hiệu giao dịch tại điểm đảo ngược xu hướng. Chiến lược này trước tiên đánh giá xem giá có xuất hiện hình thức đảo ngược hai ngày liên tiếp hay không, đồng thời chỉ số Stochastic Oscillator phát ra tín hiệu đảo ngược, nếu phù hợp sẽ tạo ra tín hiệu mua hoặc bán. Đồng thời, chiến lược này cũng sẽ đánh giá xem giá có phá vỡ mức giá cao nhất hoặc thấp nhất trong khoảng thời gian được chỉ định hay không, và nếu đáp ứng các điều kiện đảo ngược và phá vỡ đồng thời, sẽ tạo ra tín hiệu giao dịch.

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

Chiến lược này bao gồm hai phần:

  1. Phản hồi

Xác định giá thay đổi hai ngày liên tiếp ((mua khi giá đóng cửa ngày 2 cao hơn ngày 1, đường thẳng Stochastic thấp hơn đường dài; bán khi giá đóng cửa ngày 2 thấp hơn ngày 1, đường thẳng cao hơn đường dài))

  1. Phần đột phá

Xác định xem giá có vượt qua mức giá cao nhất trong chu kỳ look_bak ((Nếu vượt qua mức giá cao nhất, hãy mua)

Khi các tín hiệu của phần đảo ngược và các tín hiệu của phần phá vỡ được đồng bộ hóa (ví dụ như đảo ngược hiển thị tín hiệu mua, phá vỡ cũng hiển thị tín hiệu mua), sẽ tạo ra tín hiệu mua hoặc bán thực tế.

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

Chiến lược kết hợp này kết hợp các lợi thế của hai chiến lược giao dịch đảo ngược và phá vỡ xu hướng để nắm bắt tín hiệu chính xác hơn tại các điểm chuyển hướng.

  1. Phần đảo ngược có thể phát ra tín hiệu khi giá đảo ngược, phù hợp để nắm bắt các điểm biến.

  2. Phần phá vỡ đảm bảo rằng tín hiệu giao dịch hướng phù hợp với xu hướng, tránh giao dịch sai hướng.

  3. Hai phần có thể tạo ra cơ hội giao dịch đáng tin cậy hơn khi phát tín hiệu đồng chiều.

  4. Việc sử dụng chỉ số Stochastic tránh được tính chủ quan chỉ dựa trên hình thức giá cả.

Rủi ro và tối ưu hóa

Chiến lược này cũng có một số rủi ro cần lưu ý:

  1. Tín hiệu đảo ngược có thể là một đột phá giả, không thể xác định được xu hướng đảo ngược đã được thiết lập.

  2. Một tín hiệu đột phá có thể là một sự đột phá ảo tưởng, không thể xác định được xu hướng đã bắt đầu.

  3. Thiết lập không đúng các tham số chỉ số trong hai phần có thể dẫn đến cơ hội giao dịch bị mất.

  4. Tần suất giao dịch có thể quá cao, và các tham số có thể được điều chỉnh để kiểm soát số lần giao dịch.

Các biện pháp tối ưu hóa:

  1. Tối ưu hóa tham số chỉ số đảo ngược để đảm bảo tín hiệu đảo ngược đáng tin cậy hơn.

  2. Tối ưu hóa tham số đột phá để tránh đột phá ảo.

  3. Điều chỉnh các thiết lập tham số của phần đảo ngược và phá vỡ để tìm kiếm sự phù hợp tốt nhất.

  4. Điều chỉnh tần suất giao dịch để tránh giao dịch quá thường xuyên.

Tóm tắt

Chiến lược phá vỡ xu hướng đảo ngược sử dụng lợi thế của chiến lược phá vỡ xu hướng và chiến lược phá vỡ xu hướng để phát tín hiệu giao dịch đáng tin cậy tại các điểm biến đổi giá. Bằng cách tối ưu hóa tham số, bạn có thể cải thiện chất lượng tín hiệu và nắm bắt các cơ hội giao dịch đáng tin cậy trong khi kiểm soát tần suất giao dịch. Chiến lược này nói chung là khá mạnh mẽ, nhưng cần chú ý để ngăn ngừa rủi ro của phá vỡ giả và phá vỡ ảo.

Overview

The Reversal Breakout Trend strategy is a combo strategy that combines the advantages of reversal and breakout strategies to generate trading signals at trend reversal points. It first judges if prices reverse during two consecutive days and if the Stochastic Oscillator gives reversal signals. At the same time, it also checks if prices break through the highest/lowest prices over a certain period. When reversal and breakout conditions are met, trading signals are generated.

Strategy Logic

The strategy consists of two parts:

  1. Reversal Part

It judges if prices reverse during two consecutive days (buy when close of day 2 is higher than day 1 and Stochastic fast line is lower than slow line; sell when close of day 2 is lower than day 1 and fast line is higher than slow line).

  1. Breakout Part

It judges if prices break through the highest price over the look_bak period (buy if price breaks through the highest price).

When reversal and breakout parts give signals in the same direction (e.g. reversal shows buy and breakout shows buy), actual buy/sell signals are generated.

Advantages

This combo strategy combines the pros of reversal and trend breakout strategies and can more accurately capture signals at trend turning points:

  1. The reversal part can generate signals when prices reverse, suitable to catch turning points.

  2. The breakout part ensures trade direction is aligned with the trend, avoiding trading in wrong direction.

  3. Signals in the same direction from both parts create more reliable trading opportunities.

  4. The application of Stochastic avoids the subjectivity of judging by price pattern alone.

Risks and Optimization

There are also some risks to note:

  1. Reversal signals may be false breakouts, unable to confirm the reversal trend has established.

  2. Breakout signals may be false breakouts, unable to judge the trend has started.

  3. Improper parameter settings of the two parts may lead to missing trades.

  4. High trading frequency may occur and needs to be controlled.

Possible optimizations:

  1. Optimize parameters of reversal indicators to ensure reversal signals are more reliable.

  2. Optimize breakout parameters to avoid false breakouts.

  3. Adjust parameters of both parts to find the optimal match.

  4. Moderate the trading frequency to prevent over-trading.

Summary

The Reversal Breakout Trend strategy leverages the strengths of reversal and trend breakout strategies and reliably generates trading signals at turning points. Through parameter optimization, it can improve signal quality and capture solid trading opportunities while controlling trading frequency. Overall this strategy is robust but false breakouts remain a risk to watch out for. Proper optimization and parameter tuning is key.

[/trans]

Mã nguồn chiến lược
/*backtest
start: 2023-09-29 00:00:00
end: 2023-10-06 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 26/06/2019
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
//    Breakout Range Long Strategy
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

BreakoutRangeLong(look_bak) =>
    pos = 0
    xHighest = highest(high, look_bak)
    pos := iff(high > xHighest[1], 1, 0) 
    pos

strategy(title="Combo Backtest 123 Reversal & Breakout Range Long", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
look_bak = input(4, minval=1, title="Look Bak")
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posBreakoutRangeLong = BreakoutRangeLong(look_bak)
pos = iff(posReversal123 == 1 and posBreakoutRangeLong == 1 , 1,
	   iff(posReversal123 == -1 and posBreakoutRangeLong == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? red: possig == 1 ? green : blue )