Files
quantumbotx/core/bots/ma_crossover.py
T
Reynov Christian 78737b6835 Refactor and update bot management and routing
- Update `.gitignore` to include `lab/` for backtesting and raw data.
- Refactor `app.py` to improve error handling and logging.
- Remove deprecated files: `core/bot_logic.py`, `core/bots/base_bot.py`, `core/bots/manager.py`, `core/db/database.py`, `core/routes/api_analysis.py`, `core/routes/api_bots_analysis.py`, `core/strategies/logic_ma.py`, `core/strategies/logic_rsi.py`.
- Modify multiple files to enhance bot management, routing, and strategy handling.
- Update JavaScript and HTML templates for better UI and functionality.
2025-07-31 21:33:44 +08:00

18 lines
717 B
Python

import pandas_ta as ta
from core.bots.base_bot import BaseStrategy
class MACrossoverStrategy(BaseStrategy):
def analyze(self):
df = self.bot.fetch_data()
if df is None or len(df) < 50:
return
df['SMA_fast'] = ta.sma(df['close'], length=20)
df['SMA_slow'] = ta.sma(df['close'], length=50)
last, prev = df.iloc[-1], df.iloc[-2]
if prev['SMA_fast'] <= prev['SMA_slow'] and last['SMA_fast'] > last['SMA_slow']:
self.bot.send_signal('BUY', reason="Golden Cross MA detected.")
elif prev['SMA_fast'] >= prev['SMA_slow'] and last['SMA_fast'] < last['SMA_slow']:
self.bot.send_signal('SELL', reason="Death Cross MA detected.")