Chiến lược hồi quy về trung bình

Giao dịch Tài chính với Python

Chelsea Yang

Data Science Instructor

Chiến lược hồi quy về trung bình dựa trên RSI

Mua khi sợ hãi, bán khi tham lam

 

  • Chiến lược hồi quy về trung bình dựa trên RSI:
    • Tín hiệu Short: RSI > 70
      • Cho thấy tài sản có thể đang quá mua và giá sắp đảo chiều
    • Tín hiệu Long: RSI < 30
      • Cho thấy tài sản có thể đang quá bán và giá sắp phục hồi
Giao dịch Tài chính với Python

Tính chỉ báo

import talib
# Calculate the RSI
stock_rsi = talib.RSI(price_data['Close']).to_frame()
Giao dịch Tài chính với Python

Xây dựng tín hiệu

# Create the same DataFrame structure as RSI
signal = stock_rsi.copy()
signal[stock_rsi.isnull()] = 0

# Construct the signal signal[stock_rsi < 30] = 1
signal[stock_rsi > 70] = -1
signal[(stock_rsi <= 70) & (stock_rsi >= 30)] = 0
Giao dịch Tài chính với Python

Vẽ tín hiệu

# Plot the RSI
stock_rsi.plot()
plt.title('RSI')

Biểu đồ RSI

# Merge data into one DataFrame
combined_df = bt.merge(signal, stock_data)
combined_df.columns = ['Signal', 'Price']
# Plot the signal with price

combined_df.plot(secondary_y = ['Signal'])

Biểu đồ tín hiệu dựa trên RSI

Giao dịch Tài chính với Python

Định nghĩa chiến lược với tín hiệu

# Define the strategy
bt_strategy = bt.Strategy('RSI_MeanReversion', 
                          [bt.algos.WeighTarget(signal),
                           bt.algos.Rebalance()])
Giao dịch Tài chính với Python

Backtest chiến lược dựa trên tín hiệu

# Create the backtest and run it
bt_backtest = bt.Backtest(bt_strategy, price_data)
bt_result = bt.run(bt_backtest)
Giao dịch Tài chính với Python

Vẽ kết quả backtest

# Plot the backtest result
bt_result.plot(title='Backtest result')

Kết quả backtest hồi quy RSI

Giao dịch Tài chính với Python

Ayo berlatih!

Giao dịch Tài chính với Python

Preparing Video For Download...