Nhiều chỉ số kết hợp với chiến lược giao dịch định lượng


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

Nhiều chỉ số kết hợp với chiến lược giao dịch định lượng

Tổng quan

Chiến lược này sử dụng ba chỉ số kỹ thuật giá cổ phiếu RSI, StochRSI và Binance, và kết hợp thời gian và điều kiện hướng giao dịch để thực hiện chiến lược giao dịch định lượng để đánh giá tín hiệu mua và bán.

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

Khi chỉ số RSI nhỏ hơn vùng thấp và StochRSI K trên đường D, nó được coi là tín hiệu mua. Đồng thời, giá cổ phiếu rẻ hơn đường Brin hoặc qua đường Brin cũng được sử dụng làm cơ sở mua.

Khi chỉ số RSI vượt quá vùng cao và chỉ số StochRSI K vượt qua D, nó được coi là một tín hiệu bán. Đồng thời, giá cổ phiếu cao hơn đường Brin hoặc giảm qua đường Brin cũng được sử dụng làm cơ sở bán.

Thông qua chỉ số RSI để xác định giá cổ phiếu có quá mua hay quá bán, StochRSI để xác định động lực giá cổ phiếu, Brin để xác định giá cổ phiếu có hoạt động cao và rẻ không, nhiều chỉ số kết hợp để xác định mua bán.

Phân tích lợi thế

Đây là một chiến lược kết hợp nhiều chỉ số, các chỉ số được bao phủ rộng rãi, phán đoán dựa trên toàn diện. Trước khi đánh giá tín hiệu, cần có giá cổ phiếu hoặc chỉ số hiện tại và sự sụt giảm của nó, có một bộ lọc cho tín hiệu giả.

Giới hạn thời gian trước khi đặt hàng có thể giúp tránh rủi ro lớn hơn trong một khoảng thời gian cụ thể.

Với sự kết hợp của nhiều chỉ số, chúng ta có thể kết hợp nhiều loại xu hướng khác nhau để cải thiện hiệu quả của chiến lược.

Phân tích rủi ro

Chiến lược này phụ thuộc chủ yếu vào ba chỉ số, nếu các chỉ số phát ra tín hiệu sai, chiến lược sẽ gây thiệt hại. Các chỉ số nên xác minh lẫn nhau, không thể hoàn toàn phụ thuộc vào một chỉ số. Ví dụ: RSI dao động trong một khoảng thời gian nhất định, sẽ làm tăng khả năng phát ra tín hiệu sai.

Các điều kiện đánh giá thời gian tham gia chiến lược cũng có thể bị bỏ lỡ.

Nếu lựa chọn cổ phiếu không phù hợp, ví dụ như các cổ phiếu có hiệu ứng phóng đại nghiêm trọng, hiệu quả của chỉ số sẽ bị giảm giá đáng kể, nên nghiên cứu về khả năng ứng dụng của cổ phiếu đối với các chỉ số này.

Hướng tối ưu hóa

  1. Tăng các biện pháp kiểm soát gió như rút lui tối đa, có thể hạn chế thiệt hại.

  2. Điều chỉnh các tham số của chỉ số để phù hợp hơn với các cổ phiếu được chọn. Ví dụ: tăng tham số RSI để phát hiện biến động giá nhanh hơn.

  3. Thêm các cơ chế lọc, chẳng hạn như tạm dừng giao dịch khi giá cổ phiếu ở trung tâm của vùng Brin để tránh biến động. Và ngăn chặn đặt hàng gần cửa mở và cửa, tránh nguy cơ nhảy vọt.

  4. Khi chọn cổ phiếu, bạn có thể tham khảo các nguyên tắc cơ bản của công ty, tránh lựa chọn cổ phiếu bị gian lận tài chính nghiêm trọng. Bạn cũng có thể tăng sự phán đoán về ngành và giá trị thị trường, chọn cổ phiếu lớn.

Tóm tắt

Đây là một chiến lược chỉ số kỹ thuật đa biến điển hình, bao gồm các chỉ số cân bằng, bao phủ rộng rãi, trong khi các điều kiện đặt hàng nghiêm ngặt, có thể chọn cổ phiếu hiệu quả để đạt được lợi nhuận, rút lui cũng sẽ được kiểm soát trong một phạm vi nhất định. Bằng cách tối ưu hóa chỉ số và tham số, có thể thích ứng tốt hơn với thị trường, đồng thời tăng cơ chế kiểm soát rủi ro để tránh rủi ro tối đa, tiếp tục nâng cao độ tin cậy ổn định của chiến lược.

Mã nguồn chiến lược
/*backtest
start: 2023-12-24 00:00:00
end: 2024-01-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version= 2
strategy("RSI+STOCHRSI+BB Strategy", overlay=true)
lengthrsi = input(6)
overSold = input( 20 )
overBought = input( 70 )
price = close
vrsi = rsi(price, lengthrsi)

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)

bblength = input(50)
bbupmult =input(1.5,title="Multiplier for BB Upper Band")
bblowmult = input(1.5,title="Multiplier for BB Lower Band")

basis =  sma(close,bblength)

devup = bbupmult * stdev(close, bblength)
devlow = bblowmult * stdev(close, bblength)

upper = basis + devup
lower = basis - devlow
plot(basis, color=red)
p1 = plot(upper, color=blue)
p2 = plot(lower, color=blue)
fill(p1, p2)


yearfrom = input(2018)
yearuntil =input(2019)
monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)



if (  ( crossover(k,d)) and ( crossover(vrsi,overSold) or vrsi<overSold)  and (  (price<lower) or crossover(price,lower) ) ) 
    strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND",  comment="BUY")
    
else
    strategy.cancel(id="BUY")


if ( ( crossunder(k,d) ) and ( (vrsi >overBought) or crossunder(vrsi,overBought) ) and  ( (price>upper) or crossunder(price,upper) )) 

    strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND",  comment="SELL")
else
    strategy.cancel(id="SELL")