Before I start, I know this isn't neccesarily the way people usually do things. But I am trying to write a small piece of code that will calculate a lot size that will enter a trade using a given percentage of the available balance (including leverage) in my account. I can obvously do this during manual trading because my broker tells me how many units are available and I can just work it out with a calculator. But I want to automate things, and I don't want to just use a set volume, because as the account grows (optomistic, I know) I will be able to make bigger trades, and so I will have to manually change the lot size. Trouble is I'm getting a bit confused with the AccountEquity and AccountBalance and AccountCredit and such. Can anyone offer any assistance?
- How to calculate Maximum lot size based on Equity
- Calculating Take Profit as a Percentage of Account Balance
- How can I calculate lot size risking X% of account balance programmatically
Risk depends on your initial stop loss, lot size, and the value of the pair.
- You place the stop where it needs to be - where the reason for the trade is no longer valid. E.g. trading a support bounce the stop goes below the support.
- Account Balance * percent/100 = RISK = OrderLots * (|OrderOpenPrice - OrderStopLoss| * DeltaPerLot + CommissionPerLot) (Note OOP-OSL includes the SPREAD, and DeltaPerLot is usually around $10/pip but it takes account of the exchange rates of the pair vs. your account currency.)
-
Do NOT use TickValue by itself - DeltaPerLot
and verify that MODE_TICKVALUE is returning a value in your deposit
currency, as promised by the documentation, or whether it is returning a value
in the instrument's base currency (EUR, in this case).
MODE_TICKVALUE is not reliable on non-fx instruments with many brokers. - You must normalize lots properly and check against min and max.
- You must also check FreeMargin to avoid stop out

You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register