
Chiến lược phá vỡ xu hướng hàng tháng là một chỉ số TradingView dựa trên kịch bản pin. Chiến lược này sử dụng sự kết hợp của các đường trung bình di chuyển thích nghi, đường phá vỡ xu hướng và chỉ số RSI để xác định thời điểm vào nhiều đầu chỉ một lần mỗi tháng.
Định nghĩa biến lastEntryMonth ghi một tháng nhập cảnh trước.
Cài đặt TRAMA để thích ứng với tham số trung bình di chuyển length=99, để làm phẳng giá và đánh giá xu hướng.
Thiết lập tham số length_trend=14, vẽ đường xu hướng upper. Khi giá vượt qua đường xu hướng lên, đánh giá là phá vỡ.
Tính toán RSI tham số rsiLength = 14, đánh giá quá mua quá bán.
Logic nhập cảnh: Khi giá đóng cửa cao hơn TRAMA và giá đóng cửa phá vỡ đường ray, nếu bạn không tham gia vào tháng trước, hãy tham gia thêm.
Logic xuất cảnh: Khi RSI lớn hơn 70, lệnh hòa.
Vẽ đường cong TRAMA, đường mua quá mức RSI, hoàn thành chiến lược.
Chiến lược này tổng hợp ba chỉ số kỹ thuật chính thống để đánh giá xu hướng, động lực và tình trạng quá mua quá bán, tìm kiếm cơ hội để thực hiện nhiều rủi ro thấp hơn chỉ một lần mỗi tháng. Đồng thời, hạn chế chỉ khi giá phá vỡ xu hướng tăng lên để tham gia, tránh hoạt động không hiệu quả trong khoảng thời gian cân bằng.
Một loạt các chỉ số, đánh giá tổng hợp về tình trạng thị trường, tăng độ chính xác của quyết định.
Chỉ tham gia khi vượt qua khung thời gian hàng tháng, tránh giao dịch thường xuyên.
Sử dụng các đường trung bình di chuyển thích ứng để đánh giá xu hướng, có thể nhanh chóng bắt được sự biến đổi.
Kết hợp với chỉ số mua quá mức để tránh thị trường cao, kiểm soát rủi ro hiệu quả.
Điều kiện nhập cảnh và xuất cảnh đơn giản, trực quan và dễ nắm bắt.
Bạn có thể điều chỉnh các tham số theo nhu cầu của mình để có được chiến lược tối ưu hóa tốt hơn.
Rủi ro của một vụ phá vỡ không thành công. Giá sẽ rơi xuống đường một lần nữa sau khi vào và có thể gây ra thiệt hại.
Trong khi đó, các nhà phân tích cho rằng xu hướng này có thể có tác động xấu đến sự lựa chọn của các nhà đầu tư.
Các tham số chỉ số được đặt không đúng, dẫn đến các chỉ số có tín hiệu sai lệch.
Chỉ có phá vỡ Reflect recent market volatility. Consider adaptive stops/position sizing.
Monitor risk/reward. Consider only trading pullbacks or adding other confirmation filters.
Validate indicators on multiple timeframes. Use higher timeframes to identify trend and lower for entry.
Backtest over different market conditions. Optimize parameters to match strategy to market type.
Thêm xác nhận chỉ số khối lượng giao dịch của Volume, MA, tránh phá vỡ giả của khối lượng thấp.
Trong trường hợp RSI mua quá mức, hãy tính đến một phần lỗ lợi nhuận và giữ số còn lại.
Tối ưu hóa các tham số trung bình di chuyển, thích nghi với sự thay đổi, và tốt hơn theo dõi xu hướng chuyển đổi.
Thiết lập khoảng cách trước và sau điểm đột phá, tránh nhập cảnh trực tiếp ở điểm cao.
Thêm thêm các điều kiện lọc, chẳng hạn như chỉ số đường dẫn, chỉ số tỷ lệ dao động, để cải thiện độ chính xác của quyết định.
Bước vào phân khúc, bạn có thể đặt cược nếu giá tiếp tục phá vỡ đường kháng cự mới.
Chiến lược phá vỡ xu hướng hàng tháng tổng hợp xem xét nhiều yếu tố như xu hướng, năng lượng và tình trạng giới hạn. Nó đánh giá hướng xu hướng trong khung thời gian hàng tháng và kết hợp với việc thực hiện phá vỡ các khung thời gian thấp hơn. Đồng thời, sử dụng chỉ số RSI để kiểm soát rủi ro giao dịch một cách hiệu quả.
/*backtest
start: 2022-10-17 00:00:00
end: 2023-10-23 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy('Bannos Strategy', shorttitle='Bannos', overlay=true)
//The provided script is an indicator for TradingView written in Pine Script version 5. The indicator is used to determine entry and exit points for a trading strategy. Here's a detailed breakdown of what the script does:
// Strategy Definition:
// Bannos Strategy is the full name, with a short title Bannos.
// The overlay=true option indicates that the strategy will be overlayed on the price chart.
// Tracking Entry Month:
// A variable lastEntryMonth is set up to track the month of the last entry.
// currentMonth identifies the current month.
// Trend Regularity Adaptive Moving Average (TRAMA):
// It takes an input of length 99 as default.
// It uses adaptive calculations to track trend changes.
// Trendlines with Breaks:
// Identifies local peaks over a given period (in this case, 14) and calculates a slope based on these peaks.
// Relative Strength Index (RSI):
// Uses a length of 14 (default) to calculate the RSI.
// RSI is an oscillation indicator that indicates overbought or oversold conditions.
// Strategy Logic for Long Entry:
// A long position is opened if:
// The close price is above the TRAMA.
// There's a crossover of the close price and the upper trendline.
// The position is taken only once per month.
// Strategy Logic for Long Exit:
// The long position is closed if the RSI exceeds 70, indicating an overbought condition.
// Plotting:
// The TRAMA is plotted in red on the chart.
// A horizontal line is also drawn at 70 to indicate the RSI's overbought zone.
// In summary, this strategy aims to enter a long position when certain trend and crossover conditions are met, and close the position when the market is considered overbought as per the RSI. Additionally, it ensures entries only occur once a month.
//
// Variable pour suivre le mois de la dernière entrée
var float lastEntryMonth = na
currentMonth = month(time)
// Parameters for Trend Regularity Adaptive Moving Average (TRAMA)
length_trama = input(99)
src_trama = close
ama = 0.
hh = math.max(math.sign(ta.change(ta.highest(length_trama))), 0)
ll = math.max(math.sign(ta.change(ta.lowest(length_trama)) * -1), 0)
tc = math.pow(ta.sma(hh or ll ? 1 : 0, length_trama), 2)
ama := nz(ama[1] + tc * (src_trama - ama[1]), src_trama)
// Parameters for Trendlines with Breaks
length_trend = 14
mult = 1.0
ph = ta.pivothigh(length_trend, length_trend)
upper = 0.
slope_ph = 0.
slope_ph := ph ? mult : slope_ph
upper := ph ? ph : upper - slope_ph
// Parameters for RSI
rsiLength = 14
up = ta.rma(math.max(ta.change(close), 0), rsiLength)
down = ta.rma(-math.min(ta.change(close), 0), rsiLength)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
// Strategy Logic for Long Entry
longCondition = close > ama and ta.crossover(close, upper) and (na(lastEntryMonth) or lastEntryMonth != currentMonth)
if (longCondition)
lastEntryMonth := currentMonth
strategy.entry('Long', strategy.long)
// Strategy Logic for Long Exit
exitCondition = rsi > 70
if (exitCondition)
strategy.close('Long')
// Plotting
plot(ama, 'TRAMA', color=color.red)
hline(70, 'Overbought', color=color.red)