There are books and courses on various strategies, but I didn't use any as it started as a hobby and trying out different approaches & finding "hacks" on my own was more fun (it turns out all of these "hacks" were known previously, who would have thought).
If you have purely technical questions, reddit has a few communities that can help and you can find more people on Discord.
Understanding stocks, options and all the financial stuff was the hardest part (for me as a non-fintech guy) as it's filled with their own lingo and large part of information available online is useless or even harmful (either coming from noobs/gamblers or "financial gurus willing to disclose their secrets for in a private webinar" or even legitimate traders that operate through textbook "cargo cult" rituals). Investopedia is a good start, but if your goal is to have profitable algorithm that does not require your attention, you will need to read and understand the rules and regulations that apply to your jurisdiction and exchanges you use. There are many somewhat obscure events that happen fairly rarely (during normal times - low volatility period, right now everything is accelerated 5x) so you might not hear about them at all until they affect you, but once they do occur you will either lose money or lose opportunity. I am going for sources (sec.gov, nasdaq.com, nyse.com - I trade US options exclusively), there might be some shortcuts (probably trainings), but I haven't tried any.
If you are just starting, try paper trading but also get a real account with real money as soon as you can (< $500 is fine and it's not like you're losing that money [outright] either), because paper trading is really just an approximation and you won't catch all the special cases through it.
If you want to be above the average algotrader - start by collecting detailed data (per minute or so) and storing it for future use. Many brokers give you access to historical data but it is very basic and good quality historical data is very expensive. Use this dataset to backtest your algorithms, but try to make distinction between features that have real-world causes, the ones that are just product of chance and the ones that are caused by market makers or other traders. Most of the trades are happening fully automatically and everybody uses basically the same few sets of approaches, so you should be aware of them to either make or avoid losing money on those somewhat predictable components.
Oh, also make sure you understand the way your broker calculates all the fees and commissions as with algotrading that can make or break the whole profitability for you.
thanks so much for the detailed reply! I was mainly looking for reputable sources of information to learn from, there are so many BS opinionated websites and Youtube gurus trying to sell courses that it is very hard to find a quality source of information. I watched a bunch of Khan Academy videos but they weren't super comprehensive so I was looking to get more in depth.
what is your opinion on technical analysis and does it need to be used in algotrading? I've seen some of the basic indicators but wondering if I need something more than RSI and MACD
There are some patterns that are fairly reliable such as volatility around earnings. But that's sort of obvious and only works because everybody knows about & expects it to work. What's called TI on YouTube is different kind of price forecasting altogether. In my opinion there are only three ways to predict price movement on that scale:
1. by having insider knowledge
2. by market manipulation
3. by getting lucky
Obviously, I haven't taken any classes or worked for the Wall Street so might be missing some hidden knowledge, do your own research. My strategies mostly assume random outcomes and work on a scale that does not require TI, but I also attempt to detect dangerous stocks, market makers' sentiment and market manipulation (btw, cryptocurrencies are great for studying mm).
would you be willing to discuss your strategy for evaluating trades/picking stocks? this is something I've been trying to get into, mostly through the options market but haven't been able to come up with a solid strategy for picking stocks
For example, on Friday I made good money on FB with several 50 cent moves. I buy 500 shares at a time, so a profit target of about $250.
I would use a sequential order to buy at a certain entry point and then it immediately submits a sell order for 50 cents higher when it fills.
My strategy is basically the poor man’s HFT.
The key is picking a good entry point. I generally watch the price action for a bit and try to spot where there’s good support and the price keeps bouncing off of. I then set my orders for that price and get as many wins as I can.
No need to take my word for it, with commission free brokers you can try it out with a single share and see how you do. Avoid paper trading IMO except for learning your trading platform UI. The fills are not realistic.
Also, avoid options. They’re garbage, low liquidity and everything is usually priced in making it more difficult to make profits. If you want to trade with leverage just throw down money in your account and use the margin power your broker gives you. In theory I can trade with up to $500k in borrowed money but I stick to about $110k or so to keep about 77% equity in my account at all times.
One thing I haven’t mastered is how to set useful stop losses. There’s time the price dips and I sell too early but if I had waiting maybe 30 minutes for things to calm down I would have made profit. Not sure what to do, I just use my best judgement. And at the end of the day, worst case I have to hold for a while at least I’m holding stock in a decent company like FB and not some worthless penny stock. That’s why I maintain the 77% equity, to avoid margin calls.
Hello :) Well, my bot in fact allows you to build your own strategy quickly so my bot does not include strategy.
I'm starting to build a strategy with my bot and ta4j... using kucoin sandbox right now. For the moment, still learning, not yet profitable :)
It's not. But the cost difference between servers and serverless is maybe exponential. As traffic gets really high, serverless is going to be extremely expensive compared to a dedicated box.
Definitely something I look out for, but the advantage over something like Cloud Functions, which would be an alternative, is that a Cloud Run service handles multiple requests per instance so it isn't 1:1 with request rate.
No, the concurrency of GCF is always 1. If the latency of your code handling request is 1s, to handle 100 requests per second you'll need to have 100 instances running.