Tên của chiến lược này là
Khái niệm cơ bản của chiến lược này là tính toán giá hiện tại và giá của chu kỳ trước. Khi giá hiện tại lớn hơn giá trước, một tín hiệu ngắn được kích hoạt. Khi giá hiện tại thấp hơn giá trước, một tín hiệu dài được kích hoạt. Kích thước vị trí được tính dựa trên tổng lợi nhuận tích lũy. Sau khi mỗi giao dịch kết thúc, lợi nhuận được tích lũy vào các quỹ cho hoạt động tiếp theo, tạo thành một đầu tư lại.
Cụ thể, chiến lược ghi lại giá hiện tại và giá đóng cửa của chu kỳ trước thông qua các biến current_price và previous_price. Sau đó, các điều kiện phán quyết long_condition và short_condition được xác định. Khi giá hiện tại lớn hơn giá trước, điều kiện dài được kích hoạt. Khi giá hiện tại thấp hơn giá trước, điều kiện ngắn được kích hoạt. Khi các điều kiện được kích hoạt, xác định kích thước vị trí position_size dựa trên biến capital_actual. Sau khi thực hiện giao dịch ngắn hoặc dài, ghi lại lợi nhuận và lỗ của giao dịch này thông qua biến ganancias và tích lũy nó vào ganancias_acumuladas. Cuối cùng, tái đầu tư lợi nhuận vào vốn giao dịch tiếp theo thông qua: capital_actual=actual_actual + ganancias_acumuladas.
Lợi thế lớn nhất của chiến lược này là nó sử dụng ý tưởng hoạt động ngược. Khi có một lỗi hệ thống trên thị trường, tiềm năng lợi nhuận của nó sẽ rất lớn. Ngoài ra, cơ chế tái đầu tư của nó cũng sẽ khuếch đại lợi nhuận. Nếu bạn có được các giao dịch có lợi liên tục thông qua may mắn, tiền có thể tích lũy nhanh chóng thông qua tái đầu tư.
Cụ thể, những lợi thế chính là:
Hoạt động ngược sử dụng lỗi hệ thống trong đánh giá thị trường cho tiềm năng lợi nhuận khổng lồ.
Cơ chế tái đầu tư lợi nhuận làm tăng lợi nhuận, và quỹ tăng nhanh khi may mắn.
Chiến lược logic là đơn giản, dễ hiểu và theo dõi.
Các thông số có thể được điều chỉnh để trải nghiệm các kết quả giao dịch khác nhau.
Rủi ro lớn nhất của chiến lược này nằm ở đặc điểm hoạt động ngược của nó. Nếu nhấn mạnh vào các phán đoán sai về thị trường, nó sẽ phải đối mặt với tổn thất lớn. Ngoài ra, hiệu ứng đòn bẩy cũng sẽ khuếch đại tổn thất thông qua cơ chế tái đầu tư.
Các điểm rủi ro cụ thể bao gồm:
Nếu đánh giá xu hướng thị trường sai, lỗ từ các vị trí đóng sẽ được khuếch đại.
Rủi ro của giao dịch đòn bẩy quá cao và lỗ từ một giao dịch duy nhất có thể vượt quá số tiền chính.
Tâm lý của việc đuổi theo tăng và giết chết giảm hoạt động, và giao dịch quá mức làm tăng tổn thất.
Cài đặt tham số không chính xác cũng có thể dẫn đến tổn thất lớn bất ngờ.
Các giải pháp tương ứng bao gồm:
Quản lý rủi ro, dừng lỗ, mở các vị trí theo lô.
Sử dụng đòn bẩy một cách thận trọng và kiểm soát tổn thất giao dịch duy nhất.
Tăng cường quy định tâm lý để tránh giao dịch quá mức.
Kiểm tra các thông số trước khi chạy.
Không gian tối ưu hóa của chiến lược này chủ yếu tập trung vào cơ chế tái đầu tư lợi nhuận và điều chỉnh tham số.
Cơ chế tái đầu tư lợi nhuận có thể thiết lập tỷ lệ tái đầu tư thay vì tái đầu tư đầy đủ để kiểm soát tác động của một lỗ duy nhất.
Điều chỉnh tham số có thể thử các chiều dài chu kỳ khác nhau và kích thước giật để tìm sự kết hợp tham số tối ưu.
Ngoài ra, nên kết hợp một cơ chế dừng lỗ để kiểm soát lỗ.
Đặt tỷ lệ tái đầu tư để ngăn ngừa tổn thất quá mức.
Kiểm tra các thông số chu kỳ khác nhau để tìm các thông số tối ưu.
Thêm logic stop loss. Ban đầu có thể đặt stop loss cố định, và sau đó có thể thêm stop loss động dựa trên ATR.
Xem xét thêm các điều kiện mở và đóng dựa trên thời gian hoặc các chỉ số kỹ thuật để kiểm soát tần suất giao dịch.
Tên của chiến lược này là
/*backtest start: 2023-11-16 00:00:00 end: 2023-11-23 00:00:00 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Estrategia Las Vegas Long/Short Invertida con Reinversión de Ganancias", shorttitle="Las Vegas LS-Invertida-Reinversion", overlay=true) // Parámetros length = input(14, title="Longitud de comparación") offset = input(1, title="Desplazamiento") // Capital inicial capital_inicial = input(100, title="Capital Inicial") // Variables para el seguimiento de las ganancias var float capital_actual = capital_inicial var float ganancias_acumuladas = 0.0 // Calcular el precio actual y el precio anterior current_price = close previous_price = security(syminfo.tickerid, "D", close[1]) // Lógica de la estrategia invertida long_condition = current_price > previous_price short_condition = current_price < previous_price // Calcular el tamaño de la posición en función de las ganancias acumuladas y reinvertir if (long_condition or short_condition) position_size = capital_actual / current_price ganancias = position_size * (previous_price - current_price) // Invertir la dirección capital_actual := capital_actual + ganancias ganancias_acumuladas := ganancias_acumuladas + ganancias // Reinvertir las ganancias en la próxima orden position_size_reinvested = capital_actual / current_price // Sumar las ganancias de los trades al monto de operación if (long_condition or short_condition) capital_actual := capital_actual + ganancias_acumuladas // Colocar una orden SHORT (venta) cuando se cumpla la condición Long invertida strategy.entry("Short", strategy.short, when=long_condition) // Colocar una orden LONG (compra) cuando se cumpla la condición Short invertida strategy.entry("Long", strategy.long, when=short_condition) // Etiquetas para mostrar las condiciones en el gráfico plotshape(series=long_condition, title="Condición LONG", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small) plotshape(series=short_condition, title="Condición SHORT", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small) // Mostrar el capital actual y las ganancias acumuladas en el gráfico plot(capital_actual, title="Capital Actual", color=color.blue, linewidth=2) plot(ganancias_acumuladas, title="Ganancias Acumuladas", color=color.green, linewidth=2)