# source: https://raw.githubusercontent.com/itsYork/CryptoBot/acd643351a58c52e68a7847b77ff64aa0a316235/SimpleStrategy.py
from freqtrade.strategy.interface import IStrategy
from pandas import DataFrame


class Github_itsYork_CryptoBot__SimpleStrategy__20250811_180523(IStrategy):
    """Basic EMA crossover strategy for Freqtrade."""

    timeframe = '1h'
    minimal_roi = {"0": 0.05}
    stoploss = -0.1
    trailing_stop = False

    def populate_indicators(self, df: DataFrame, metadata: dict) -> DataFrame:
        df['ema_fast'] = df['close'].ewm(span=12, adjust=False).mean()
        df['ema_slow'] = df['close'].ewm(span=26, adjust=False).mean()
        return df

    def populate_buy_trend(self, df: DataFrame, metadata: dict) -> DataFrame:
        df.loc[(df['ema_fast'] > df['ema_slow']), 'buy'] = 1
        return df

    def populate_sell_trend(self, df: DataFrame, metadata: dict) -> DataFrame:
        df.loc[(df['ema_fast'] < df['ema_slow']), 'sell'] = 1
        return df
