I am looking to build an trading system on a small account (10-20k). I was considering YM and the micro currencies (M6E) and spot forex. However looking at the cost per contract, my commissions on a M6E contract is like 1.36 ticks RT, while the 2 fx brokers that allow US citizens and connect to multicharts are at 2.6 or greater. Which puts me in a tough spot. I would love to trade spot FX if the commission cost wasn't so high, also that does not include variable rates. Any have any thoughts on the spot FX and trading algorithmically? Is it worth the added frictions for a more "liquid" market (since spreads can be variable we dont actually know how liquid it is for any given broker you use) or just stick with mini/micro futures, where i get account security and know exactly how liquid/illiquid it is.
I'm satisfied with Interactive Brokers for spot FX (commission USD $0.00002 per unit, minimum $2.50 per order or $5.00 round trip, where 100,000 units=standard lot), approximately Interbank spreads. IB considers only the dollar amount of the order rather than lots, so you can trade any number of units per order as long as the dollar amount of the order exceeds some minimum after leverage (IIRC something like $30,000 minimum). Smaller amounts are treated as currency exchange transactions rather than trades and subject to higher fees. Leverage is relatively small compared to other FX brokers (vicinity of 30x vs 100-400x). Minimum account size is $10,000, so a $10-20,000 account will qualify. As one might expect costs become important if executing a large number of trades per day, scalping for a few pips at a time, say.
I don't know the exact numbers but would guess a lot of traders trade spot FX algorithmically using simple bots (a few indicators, up to 5 parameters, say). These work well enough until they don't Typical rules of thumb are to take a bot offline when the mean of the last 10 trades becomes negative or the ratio of the mean expectancy to the standard deviation falls below 0.25. Like any mechanical system bots will encounter significant drawdowns when in a losing streak, the probability of occurrence and severity of which can be estimated by simple formulas. For example, a win rate of 50% implies that at some point the strategy will suffer 16 losing trades in a row; win rate of 30% implies a streak of 30 losing trades will occur at some point. In general drawdown is inversely proportional to win rate (and proportional to risk), so in theory it's possible to tailor an algorithm to one's risk tolerance. Lower risk tolerance tends to incur higher transaction costs due to smaller time frames and higher trading frequency, however.
I so for a minimum order of 30,000 (after leverage) I am taking a $5 round trip, my tick value is about $3. so i am paying 1.667 ticks, which actually isn't bad. Slightly less than what I am paying for the M6Es, but my tick value is much lower at $1.25. Thanks for your advice, but I am looking for something with a smaller tick value, the smaller the better with comparative commissions. I appreciate your input though.
Regarding your algorithm stopping functions, I have never heard of those ones before. Usually I just compare vs past maxDD and my Monte Carlo for max DD, average draw down, and average winning and losing streaks. If we break any of those barriers, its time to turn off. But usually that takes quiet a while of drawdown. Though 10 trades with a mean of negative profit seems a bit pre emptive as you mentioned 50% winrate will garner 16 losing trades in a row. If that's true are you not pulling the plug early and not allowing the system to recover possibly, since it is within statistical bounds. I have never gotten a system that was not over fit with a >65% win rate so that's my assumption.
Re losing streaks I should clarify these results are predicted by the "law of large numbers" (LLN) applied to a strategy's P&L statistics according to the well known formula
probable number of consecutive losses = LN(number of trades)/LN(probability of losing)
where LN = natural log.
While the LLN was around long before FX my only experience of it in action on large data sets is with forward optimization & testing on (out of band) short time frame spot FX, although in my experience the rules apply equally to live trading. The numbers quoted assume 50000 trades (what I use) but this dependence should become apparent through e.g. Monte Carlo testing with any size data set (e.g., a few 1000 trades).
The takeaway from that is, even if we accept that the math will be waiting to bite us as the number of trades increases unboundedly during forward testing or live trading, there is no guarantee it will wait 50000 trades, say, to max out a losing streak. The short term expectancy-statistics-based rules of thumb about when to take a bot offline are based on a relatively conservative risk tolerance, intended to alert ASAP to the fact such a streak may be in progress, particularly in the early stages when account balance may be a factor. The tricky part is deciding what the losing streak signifies.
The good news is that while drawdown may therefore also increase unboundedly with continued trading, as long as expectancy remains positive so does the length of winning streaks, so that drawdown becomes less of a percentage of the account.
why not use Oanda or any other online fx broker? They charge "0" fee, however the spread is bigger, but you will get spread from IB anyway, let's say IB is 1pip and Oanda is 1.9 pip, it's still better than the $5 round trip fee.
I have traded with oanda before, however they cant link up to any other software that I am aware of for algo trading other than MT4. Which is crap because of the latency issues and constant problems with orders. Also their spreads can be pretty volatile around news and just sometimes randomly, which makes it hard to build in the slippage for making your algos baseline. I have personally gotten re quotes and canceled orders in my live account with them. As for IB i have never used them for anything so i cant comment on that.