
Chiến lược này là một chiến lược giao dịch đột phá động lực dựa trên các chỉ số dao động ngẫu nhiên K-line và D-line. Nó sử dụng K-line từ vùng bán tháo trở lại vùng mua tháo như một tín hiệu mua để theo dõi cách dừng lỗ.
Chiến lược này bao gồm:
Sử dụng đường K và đường D của chỉ số Smoothed Stoch 14 chu kỳ của chỉ số RSI, xử lý trơn tru SMA 3 chu kỳ.
Khi K-Line đeo 20 như một tín hiệu mua, thì mua và mở vị trí.
Sử dụng phương pháp theo dõi dừng lỗ, thiết lập khoảng cách dừng lỗ theo dõi cố định. Đồng thời thiết lập điểm dừng lỗ thấp nhất trong 20 chu kỳ trong thời gian đo lại.
Xác định khoảng cách điểm giữa điểm dừng lỗ và giá đóng cửa hiện tại dựa trên điểm thấp nhất trong 20 chu kỳ trong thời gian đánh giá. Sau đó, tính giá trị của mỗi điểm dựa trên số tiền dừng lỗ đô la và khoảng cách điểm. Cuối cùng, tính kích thước vị trí cụ thể dựa trên giá trị điểm.
Bằng cách này, chiến lược này sử dụng đột phá động lực của sự đảo ngược của vùng mua quá mức làm tín hiệu đầu vào, sử dụng quản lý vị trí được tính toán chính xác và theo dõi dừng lỗ, thực hiện giao dịch đảo ngược động lực và kiểm soát rủi ro hiệu quả.
Chiến lược này có một số ưu điểm:
Tín hiệu nhập cảnh rõ ràng, phá vỡ khu vực bán tháo, động lực mạnh mẽ.
Dùng Tracking Stop, bạn có thể dừng lỗ một cách linh hoạt theo xu hướng thị trường.
Theo tính toán chính xác của vị trí đầu vào, kiểm soát hiệu quả lỗ đơn.
Tính toán điểm dừng lỗ trong chu kỳ phản hồi để đạt được điểm dừng lỗ chính xác.
Tính toán vị thế đơn giản, rõ ràng và dễ dàng.
Lập luận của chiến lược đơn giản, rõ ràng và dễ hiểu.
Cấu trúc mã rõ ràng, dễ đọc và tái phát triển.
Chiến lược này cũng có một số rủi ro:
Cổ phiếu tự nó có nguy cơ biến động. Trong trường hợp tình hình kinh khủng, dừng lỗ có thể được kích hoạt nhiều hơn.
Có thể có nguy cơ giao dịch quá mức.
Không có cơ hội nào để có được một vị thế độc lập và có thể lợi dụng tình hình.
Không có khả năng lọc hiệu quả các trường hợp. Ví dụ, trong trường hợp động đất, có thể xảy ra hư hỏng thường xuyên được kích hoạt.
Bạn có thể quản lý rủi ro một cách tối ưu bằng cách:
Tối ưu hóa các tham số, điều chỉnh các điều kiện nhập cảnh, tránh giao dịch quá thường xuyên.
Việc áp dụng thời hạn phân tán, xây dựng kho hàng theo từng đợt, giảm rủi ro đơn phương.
Tăng khả năng phán đoán về bối cảnh giao dịch ở cấp độ lớn, tránh giao dịch thường xuyên trong điều kiện bất lợi.
Tối ưu hóa chiến lược dừng lỗ để tránh quá nhạy cảm.
Chiến lược này có thể được tối ưu hóa theo các hướng sau:
Tối ưu hóa chiến lược dừng lỗ, bạn có thể xem xét các phương thức theo dõi động, dừng lỗ theo lô, dừng lỗ di động, để dừng lỗ mượt mà hơn.
Tăng khả năng đánh giá xu hướng cấp độ lớn, tránh xu hướng biến động giao dịch. Có thể kết hợp các phương thức đánh giá xu hướng như đường trung bình, phá vỡ kênh.
Bạn có thể cân nhắc giữ vị thế hai chiều, tham gia vào vị trí đảo ngược, tận dụng lợi nhuận từ sự phục hồi.
Các tham số có thể được tự động tối ưu hóa thông qua các phương pháp như học máy để các tham số thích ứng tốt hơn với các giai đoạn khác nhau của thực tế.
Tối ưu hóa chiến lược quản lý vị thế, bạn có thể xem xét các phương thức khác như tỷ lệ cố định, quỹ cố định, để sử dụng quỹ hợp lý hơn.
Thêm nhiều điều kiện lọc, giao dịch với cơ hội tốt hơn. Các chỉ số như tổng hợp lưu lượng, đường bullin được tối ưu hóa.
Chiến lược này nói chung là một chiến lược phá vỡ động lực đơn giản và rõ ràng hơn. Nó có cách dừng lỗ thận trọng hơn, kiểm soát hiệu quả tổn thất đơn lẻ. Tuy nhiên, vẫn cần điều chỉnh tối ưu hóa cho các tham số chiến lược phù hợp hơn với thị trường, lọc các tín hiệu giao dịch không hiệu quả, cân bằng tốt hơn giữa lợi nhuận và rủi ro.
//@version=2
//descripcion:
//entrada en saturacion oscilador estocastico
//salida por trailing
strategy("MomentumBreak#1", overlay=true,calc_on_every_tick=true,
default_qty_type=strategy.fixed,currency="USD")
//entradas y variables de indicadores
smoothK = input(3, minval=1)
smoothD = input(3, minval=1)
lengthRSI = input(14, minval=1)
lengthStoch = input(14, minval=1)
src = input(close, title="RSI Source")
rsi1 = rsi(src, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
overbought=input(80)
oversold=input(20)
//entradas de stop , trail, profit
stop=input(1500)
stop_dentro_de_los_ultimos_lows=input(20)
trail_points=input(500)
trail_offset=input(100)
profit=input(1000)
riesgo_en_dolares=input(15)
//condicion de compra: k>80
buycondition=crossover(k,oversold)
//entrada a la posicion
posicionabierta=0
if year>2015
if buycondition
stoplow=lowest(stop_dentro_de_los_ultimos_lows)
riesgo_en_pips = (close - stoplow)
valor_del_pip = (riesgo_en_dolares / riesgo_en_pips)
tamanio_de_la_posicion= ( valor_del_pip) //la posicion la esta calculando bien
strategy.entry("buy",strategy.long)
strategy.exit("salida","buy",trail_points=trail_points,trail_offset=trail_offset,stop=stoplow,comment=tostring(stoplow))
//////////////////////////////////condicion de stop por drodown 10% equity
//strategy.risk.max_drawdown(15,strategy.cash)
// condicion de stop por perdida mayor a $15 en op abierta
//strategy.risk.max_intraday_loss(15,strategy.cash)
//formas de tomar stop:
// cuando llega a una media movil: strategy.close o strategyentry o strategy.exit o strategy.order
// determinado por un numero de pips strategy.exit
// determinado por el calculo de la posicion:
//tomar el minimo minimo de los ultimos 20 periodos, guardarlo como nivel de stop
//calcular la posicion en base a ese stop:
//prcio de entrada - precio de stop = pips_en-reisgo
//riesgo_e_dolares / pips_en_riesgo = pip_value
//position_size=10000 * pip_value