Tested on historical data, this bot makes assumptions based on live data incoming to the bot. Then, it will get into positions based on its prediction. Once exit conditions are met, it will exit the trade for a profit (or loss). Below is the story of its creation.
By a chance encounter, I met a senior algorithmic trader. He taught me what algo trading was and what I could do to get started. I did homework on different strategies. I studied different combination of technical indicators that work well for cryptocurrencies.
Based on the research I did, I picked a simple Relative Strength Indicator (RSI) combined with Moving Averages (MAs). This combination of technical indicators was my first (MVP) strategy. I choose this so the MAs could help to confirm RSI signals. I wrote in Python via Replit.
I took the MVP strategy and began to backtest it. Pulled historical data from Yahoo Finance, this allowed for free and easy historical data collection. I then simulated the trading with my current balance, across different time ranges and at varying time intervals to get an idea of how the strategy would have performed had it been live.
From there, I streamed real-time (live) data from OANDA's and Kraken's WebSockets. Then internally paper-traded (simulating the real trading but with fake money) the strategy with it logging the results right to the console.
As I tested the simple MVP strategy on live data, I found the key parameters that needed to be changed/tweaked. Also discovered new combinations of indicators that increased accuracy. This helped me to better understand the relationship between the incoming data and the logic that executes the trades.
After weeks of testing the MVP on live data internally (so on a real market but with fake money), we had found the best set of indicators and their parameter values/settings. I had the proof I needed to deploy the bot with real money. I had about $3,000 saved to deploy, this is where the rubber met the road.
I deployed the bot on OANDA. Trading EUR/USD pair. We have a Task Scheduler (Windows) that kicks the code on every trading day at 4am EST. The code shuts off (exits all trades) at 1pm EST.
We also have Peak shut offs (when the bot profits <= $X it turns off) and Valley shut offs (when the bot loses <= -$X it turns off).
I took what I learned while building the Forex bot, and built more. I designed, developed and deployed multiple crypto bots. There were slight technical differences. From both the data and the execution sides, but the overall process was the same as the Forex bot.
We're rolling the profits back into the bots to create larger order sizes. Our next step is to show the powerful results/returns we have created to potential investors. I am still doing research on this next move, but very excited for the future.