4 ms·
I wrote a bot but could never make money due to the transaction fees. I wanted to make 15-20 trades per day. Instead, had to limit it to 3 or 4, meaning a lot
by SNACKeR99 10y ago
I wrote a bot but could never make money due to the transaction fees. I wanted to make 15-20 trades per day. Instead, had to limit it to 3 or 4, meaning a lot more burden on each trade to be right.
The funnest part of writing a bot is using all the historical data to observe how the bot would have done during that period. I ended up checking thousands of permutations of parameters by brute force to determine the best ones, but in the end transaction fees killed me. I didn't have the confidence to do it at a large enough scale to make money I guess.
- atemerev 10y agoI only trade on zero-fee or maker-taker exchanges, like GDAX, Bitmex and OKCoin. Making profits with fees is possible, but harder.
- louprado 10y agoSince the exchange functions as a market maker, do they also make money on the spread ? Or is the Ask and Bid an exact match ? Maybe there is no way to know for certain without two accounts. Also do you trade on multiple exchanges to perform inter-exchange arbitrage or for some other reason ?
- mbrookes 10y ago> Since the exchange functions as a market maker, do they also make money on the spread ? Market makers take a spread. They provide liquidity at a cost.
- louprado 10y agoGDAX, for example, has a maker/taker type of fee structure that charges you based on your account volume: https://www.gdax.com/fees https://www.gdax.com/fees There are many ways an exchange can collect fees. An exchange doesn't have to take a spread but it is too tempting since it is easily hidden.
- radarsat1 10y agoSame experience here, several years ago. I'd love to know how professionals manage to avoid problems with transaction fees. I guess it is just taken into account during prediction, but it does seem to limit the number of tentative transactions you can make, even if you cancel them.
- logicchains 10y agoIt's actually fairly simple: basically change the metric of a trade worth taking from "one with expected profit > 0" to "one with expected profit > expected fee". It does limit the number of potential profitable trades, and hence fees are sometimes used as a way for exchanges to reduce trading volume. Or to divert it; some Chinese (non-bitcoin) exchanges for instance charge greater fees for intraday trading, to discourage speculation.
- voidz 10y agoFolks, is this really deserving the downvotes it receives? Parent is merely querying on his assumptions. Please, let's try to be kinder on these types of well meant and non-hostile comments.
- notpc 10y ago>The funnest part of writing a bot is using all the historical data to observe how the bot would have done during that period. I ended up checking thousands of permutations of parameters by brute force to determine the best ones, but in the end transaction fees killed me. That's a sure way to find a bad strategy. You end up doing the equivalent of overfitting. If you look at enough variables, the chance of there not being spurious correlations is basically zero, so you're guaranteed to land on sets of parameters that look good with historical data but fail going forward.
- BickNowstrom 10y agoThe writing does not exclude proper backtesting. A more favorable reading would have him/her use a holdout or test set that is in the future of the historical data used for training. Then there would be no problem with that approach in regards to overfit/poor generalization.
- drawnwren 10y agoThere is still the problem of the market not reacting to his trades. It would be very easy for me to show a trade of $1m making money, but very hard to execute such a trade.
- jmcqk6 10y agoThis is why it's important to wait and test your model against out of sample data. I.E. if you back tests up until today, give it some time and test it against what happened from now until then.
- pg_is_a_butt 10y agoobserving historical data is absolutely NO indication of how the bot would have done during that period. it is not fun, it is dumb. you are dumb. the second another bot in the real world sees you get triggered, they'll manipulate the market and keep you biting until you're broke. you're all idiots.