Skip to content

QTradeX Docs

import qtradex as qx

class EMACrossBot(qx.BaseBot):
    def indicators(self, data):
        return {
            "fast_ema": qx.ti.ema(data["close"], 10),
            "slow_ema": qx.ti.ema(data["close"], 50),
        }
    def strategy(self, state, indicators):
        if indicators["fast_ema"] > indicators["slow_ema"]:
            return qx.Buy()
        elif indicators["fast_ema"] < indicators["slow_ema"]:
            return qx.Sell()
        return qx.Hold()

A bot class. Two indicators. A decision rule. That's the skeleton of every QTradeX strategy.

Get Started →


Explore


Community & Resources