Equity – Your equity is simply the total amount of funds you have in your trading account. Your equity will change and float each time you open a new trading position, in such a way that all your unrealised profits and losses will be added to or deducted from your total equity. For example, if your trading account size is $1,000 and your open positions are $50 in profit, your equity will amount to $1,050.
We also offer an IRA Margin account, which allows you to immediately trade on your proceeds of sales rather than waiting for your sale to settle. You can trade assets in multiple currencies and trade limited option spread combinations. IRA margin accounts have certain restrictions compared to regular margin accounts and borrowing is never allowed in an IRA account. Futures trading in an IRA margin account is subject to substantially higher margin requirements than in a non-IRA margin account. Margin rates in an IRA margin account may meet or exceed three times the overnight futures margin requirement imposed in a non-IRA margin account1.

GUI Control and Reporting - Right now the system is completely console/command line based. At the very least we will need some basic charting to display backtest results. A more sophisticated system will incorporate summary statistics of trades, strategy-level performance metrics as well as overall portfolio performance. This GUI could be implemented using a cross-platform windowing system such as Qt or Tkinter. It could also be presented using a web-based front-end, utilising a web-framework such as Django.
In order to understand Forex trading better, one should know all they can about margins. Forex margin level is another important concept that you need to understand. The Forex margin level is the percentage value based on the amount of accessible usable margin versus used margin. In other words, it is the ratio of equity to margin, and is calculated in the following way:
The script is currently hardcoded to generate forex data for the entire month of January 2014. It uses the Python calendar library in order to ascertain business days (although I haven't excluded holidays yet) and then generates a set of files of the form BBBQQQ_YYYYMMDD.csv, where BBBQQQ will be the specified currency pair (e.g. GBPUSD) and YYYYMMDD is the specified date (e.g. 20140112).
The market then wants to trigger one of your pending orders but you may not have enough Forex free margin in your account. That pending order will either not be triggered or will be cancelled automatically. This can cause some traders to think that their broker failed to carry out their orders. Of course in this instance, this just isn't true. It's simply because the trader didn't have enough free margin in their trading account.

For those of you who are new to source version control you will probably want to read up on how git (and version control in general) works with the fantastic free ebook Pro Git. It is worth spending some time learning about source control as it will save you a huge amount of future headache if you spend a lot of time programming and updating projects!

Trading on margin refers to trading on money borrowed from your broker in order to substantially increase your market exposure. When opening a margin trade, your broker lends you a certain sum of money depending on the leverage ratio used, and allocates a small portion of your trading account as the collateral, or margin for that trade. The remaining funds in your trading account will act as your free margin, which can be used to withstand negative price fluctuations from your existing leveraged positions, or to open new leveraged trades. The relation between your free margin and other important elements of your trading account, such as your balance and equity, will be explained later. For now, it’s important to understand the meaning of margin in Forex.