btdash-demo.mp4
Two exponential moving averages of the price, where buy orders occur when fast EMA rises above slow EMA, and sell orders occur when the inverse occurs.
Users can set:
- fast_ema_window
- slow_ema_window
Buy orders when Relative Strength Index dips below the "oversold threshold", and sell when RSI climbs above "overbought threshold."
Users can set:
- rsi_window
- oversold_threshold
- overbought_threshold
Use Bollinger bands that expand & contract with volatility. When price closes below the lower band, set buy orders, and set sell orders when price closes above the upper band.
Users can set:
- bb_window
- alpha
- middle_band_type
Buy orders when MACD line crosses above signal line, and sell orders for the inverse.
Users can set:
- fast_window
- slow_window
- signal_window
Several trade figures are available on the first page of the backtest results:
- Order history imposed on close price line
- Profit/loss per trade over period of backtest
- Cumulative returns over period of backtest
Time series of total portfolio value over the backtest period, which visualizes overall growth/ROI & risk of strategy. Traders should aim for a steadily rising curve without large dips -- an indicator of a robust strategy.
Graph showing, at each point in time, the decline from the most recent peak of the equity curve. Drawdowns quantify the worst losses, and can indicate the risk and psychological stress associated with a specific strategy.
To run locally, you'll need the Python runtime installed. Then, clone this repo and run:
python3 -m pip install -r requirements.txt && python3 -m streamlit run