I'm sort of new to MQL5 - been writing some EAs, looks very interesting.
I have one issue with position sizes: so far I have used the MT Demo account, so have done my position size (calculations / setting) in lots .. I am though actually looking into opening a live Spread Betting account on MT5, got a demo one at the moment actually, so since Spread Betting uses a 'money per point' approach (i.e bet 1 pound per pip change, so a 10 pip move pockets you 10 pounds) I am wondering how does that change the Limit / Stop sell order parameter for volume? Do I just use, for example, a double of 1.0 to indicate I want to 'bet' 1 pound per pip .. ?
Thanks, any help appreciated, can not find any info on this anywhere
Everything is still done in lots, it is just the value of a lot that changes.
In my experience on SB accounts, 1 pip at 1 lot = £1
Nevertheless, the calculation can be done the same as with "normal" accounts i.e.
double tick_size = SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_SIZE), // how big is a tick
tick_value = SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE), // how much is a tick worth
pip_size = (_Digits%2==1)? _Point*10 : _Point, // how big is a pip
pip_value = (tick_value/tick_size)*pip_size; // how much is 1 pip worth at 1 lot
printf("1 pip at 1 lot is worth %s %f", AccountCurrency(), pip_value);