Koi_Capital

SPY Master v1.0

This is a simple swing trading algorithm that uses a fast RSI-EMA to trigger buy/cover signals and a slow RSI-EMA to trigger sell/short signals for SPY , an xchange-traded fund for the S&P 500 .

The idea behind this strategy follows the premise that most profitable momentum trades usually occur during periods when price is trending up or down. Periods of flat price actions are usually where most unprofitable trades occur. Because we cannot predict exactly when trending periods will occur, the algorithm basically bets money on all trade opportunities during all market conditions. Despite an accuracy rate of only 40%, the algorithm's asymmetric risk/reward profile allows the average winner to be 2x the average loser. The end result is a positive (profitable) net payout.

TRADING RULES:

Buy/Cover = EMA3(RSI2) cross> 50
Sell/Short = EMA5(RSI2) cross< 50

BACKTEST SETTINGS:

- Period = March 2011 - Present
- Initial capital = $10,000
- Dividends excluded
- Trading costs excluded

PERFORMANCE COMPARISON:

There are 657 trades, which means 1,314 orders. Assuming each order costs $2 (what I pay for at Interactive Brokers), total trading costs should be $2,628.

-SPY (buy & hold) = 132.73 ---> 193.22 = +45.57% (dividends excluded)
-SPY Master v1.0 = $12,649 - $2,628 = $10,021 = +100.21%

DISCLAIMER: None of my ideas and posts are investment advice. Past performance is not an indication of future results. This strategy was constructed with the benefit of hindsight and its future performance cannot be guaranteed.
Mã nguồn mở

Với tinh thần TradingView, tác giả của tập lệnh này đã xuất bản nó dưới dạng mã nguồn mở, vì vậy các nhà giao dịch có thể hiểu và xác minh nó. Chúc mừng tác giả! Bạn có thể sử dụng mã này miễn phí, nhưng việc sử dụng lại mã này trong một ấn phẩm chịu sự điều chỉnh của Nội quy nội bộ. Bạn có thể yêu thích nó để sử dụng nó trên biểu đồ.

Bạn muốn sử dụng tập lệnh này trên biểu đồ?
//@version=2
strategy("SPY Master v1.0", overlay=true)

basis = rsi(ohlc4, input(2))

rsiema1 = ema(basis, input(3))
rsiema2 = ema(basis, input(5))

trigger1 = input(50)
trigger2 = input(50)

if (crossover(rsiema1, trigger1))
    strategy.entry("BUY", strategy.long, comment="BUY")

if (crossunder(rsiema2, trigger2))
    strategy.entry("SELL", strategy.short, comment="SELL")
Kory Hoang (http://www.stably.io)