Hi there,
I'm trying to figure something out but ...
I'll try to explain.
I have $25000 account and I prefer to risk on every trade 3% of it. This is $1500. The standard lot normally yields $10 for 1 pip. Right ? So divide 1500 by 10 means I have 150 pips price channel for the market which I can risk. So I can have one lot and 150 pips stop loss or 3 lots and 50 pips stop loss or 5 lots and 30 pips stop loss .... etc. Am I right ? I choose to have 3 lots and 50 pips stop loss. If the trade goes wrong then I lose 3 * 50 = 150 pips which is $1500. All above for EUR/USD.
Now, how I can do all this in my EA ?
3% of $25,000 is $750, standard lot only yeilds $10 for xxxUSD pairs (assuming your deposit currency is $)
Rather than using Account Balance you might be better using FreeMargin . . .
But regardless of all this, this subject has been done to death, do a search using google (mql4 lot size) or on this forum's search for lot size
Sorry, the 3% are $750 ...
Yes, I deal only with xxxUSD at the moment.
RaptorUK, WHRoeder, THANK YOU for the answers but I really want to figure out only this :
"
I have $25000 account and I prefer to risk on every trade 3% of it. This is $750. The standard lot normally yields $10 for 1 pip. Right ? So divide 1500 by 10 means I have 150 pips price channel for the market which I can risk. So I can have one lot and 150 pips stop loss or 3 lots and 50 pips stop loss or 5 lots and 30 pips stop loss .... etc. Am I right ? I choose to have 3 lots and 50 pips stop loss. If the trade goes wrong then I lose 3 * 50 = 150 pips which is $1500. All above for EUR/USD.
"
Can you help with some exact code how to get this math done ?
Thank you and I really appreciate your answers !
And WHRoeder, your code looks really really good but is too complicated for me. I'm trying to keep my EA very very simple and stooopid :) Anyway I'm very happy with the performance of my EA, just this lot calculation is driving me crazy...
There is only one answer . . . . . LEARN ! ! !
I'm trying my best ...
Glad to hear it, me too, I'm currently working on my TradeSize() function, you can guess what it does . . .
TradeSize() sounds the same as LotSize() :)
TradeSize() sounds the same as LotSize() :)
Yep, probably very similar. Tell you what, I won't bother, when you have done yours can you send me the code, that way I can go do something else instead . . . :-)
No problem ! You can have it of course :)
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Hi there,
I'm trying to figure something out but ...
I'll try to explain.
I have $50000 account and I prefer to risk on every trade 3% of it. This is $1500. The standard lot normally yields $10 for 1 pip. Right ? So divide 1500 by 10 means I have 150 pips price channel for the market which I can risk. So I can have one lot and 150 pips stop loss or 3 lots and 50 pips stop loss or 5 lots and 30 pips stop loss .... etc. Am I right ? I choose to have 3 lots and 50 pips stop loss. If the trade goes wrong then I lose 3 * 50 = 150 pips which is $1500. All above for EUR/USD.
Now, how I can do all this in my EA ?
I tried the follow but with no success.
=================================
double Lots;
//Formula: Pip = lot size x tick size
//Example for 100,000 GBP/USD contract:
//1 pip = 100,000 (lot size) x .0001 (tick size) = $10.00 USD
double contract = MarketInfo( Symbol(), MODE_LOTSIZE );
double ticksize = MarketInfo( Symbol(), MODE_TICKSIZE );
double onePip = contract * ticksize;
double RiskUSD = AccountBalance() * ( Risk / 100 );
double RiskPip = RiskUSD / onePip ;
StopLoss_Pips = RiskPip / 3;
LOTs = RiskPip / StopLoss_Pips;
==================================
Obviously I'm doing something wrong because the lot size always become very big.
If anyone can help with this I'll be very thankful !
Thank you in advance .
EDIT
COME ON people.
What ? Nobody can help with this math. ???
I have tried all bloody lot size calculation func. on this forum and none of them is doing what I need !
PLEASE HELP !