Is a member of the Investment Industry Regulatory Organization of Canada (IIROC) and Member - Canadian Investor Protection Fund. Know Your Advisor: View the IIROC AdvisorReport. Trading of securities and derivatives may involve a high degree of risk and investors should be prepared for the risk of losing their entire investment and losing further amounts. Interactive Brokers Canada Inc. is an execution-only dealer and does not provide investment advice or recommendations regarding the purchase or sale of any securities or derivatives.
GAIN Capital recommends you to seek independent financial and legal advice before making any financial investment decision. Trading CFDs and FX on margin carries a higher level of risk, and may not be suitable for all investors. The possibility exists that you could lose more than your initial investment further CFD investors do not own or have any rights to the underlying assets. 
Slippage Handling - The system is currently generating a lot of slippage due to the high-frequency nature of the tick data provided from OANDA. This means that the portfolio balance calculated locally is not reflecting the balance calculated by OANDA. Until correct event-handling and slippage adjustment is carried out, this will mean that a backtest will not correctly reflect reality.

Trading foreign exchange on margin carries a high level of risk, and may not be suitable for everyone. Before deciding to trade foreign exchange you should carefully consider your investment objectives, level of experience, and risk appetite. Remember, you could sustain a loss of some or all of your initial investment, which means that you should not invest money that you cannot afford to lose. If you have any doubts, it is advisable to seek advice from an independent financial advisor.
Risk Management - Many "research" backtests completely ignore risk management. Unfortunately this is generally necessary for brevity in describing the rules of a strategy. In reality we -must- use a risk overlay when trading, otherwise it is extremely likely that we will suffer a substantial loss at some stage. This is not to say that risk management can prevent this entirely, but it certainly makes it less likely!
These articles, on the other hand, discuss currency trading as buying and selling currency on the foreign exchange (or "Forex") market with the intent to make money, often called "speculative forex trading". XE does not offer speculative forex trading, nor do we recommend any firms that offer this service. These articles are provided for general information only.

Note also that when we begin storing our trades in a relational database (as described above in the roadmap) we will need to make sure we once again use the correct data-type. PostgreSQL and MySQL support a decimal representation. It is vital that we utilise these data-types when we create our database schema, otherwise we will run into rounding errors that are extremely difficult to diagnose!
If you believe that a currency pair such as the Australian dollar will rise against the US Dollar you can place a buy trade on AUD/USD. If the prices rises, you will make a profit for every point that AUD appreciates against the USD. If the market falls, then you will make a loss for every point the price moves against you. Our trading platform tells you in real-time how much profit or loss you are making.
All currency trading is done in pairs. Unlike the stock market, where you can buy or sell a single stock, you have to buy one currency and sell another currency in the forex market. Next, nearly all currencies are priced out to the fourth decimal point. A pip or percentage in point is the smallest increment of trade. One pip typically equals 1/100 of 1 percent.

If your free margin drops to zero, your broker will send you a margin call in order to protect the used margin on your account. Always monitor your free margin to prevent margin calls from happening, and calculate the potential losses of your trades (depending on their stop-loss levels) to determine their impact on your free margin. With some experience, you’ll find it significantly easier to follow your margin ratio and understand the meaning of margin in Forex trading.
Trading on margin is extremely popular among retail Forex traders. It allows you to open a much larger position than your initial trading account would otherwise allow, by allocating only a small portion of your trading account as the margin, or collateral for the trade. Trading on margin also carries certain risks, as both your profits and losses are magnified.
Risk Management - Many "research" backtests completely ignore risk management. Unfortunately this is generally necessary for brevity in describing the rules of a strategy. In reality we -must- use a risk overlay when trading, otherwise it is extremely likely that we will suffer a substantial loss at some stage. This is not to say that risk management can prevent this entirely, but it certainly makes it less likely!
Local Portfolio Handling - In my opinion carrying out a backtest that inflates strategy performance due to unrealistic assumptions is annoying at best and extremely unprofitable at worst! Introducing a local portfolio object that replicates the OANDA calculations means that we can check our internal calculations while carrying out practice trading, which gives us greater confidence when we later use this same portfolio object for backtesting on historical data.

Margin is one of the most important concepts of Forex trading. However, a lot of people don't understand its significance, or simply misunderstand the term. A Forex margin is basically a good faith deposit that is needed to maintain open positions. A margin is not a fee or a transaction cost, but instead, a portion of your account equity set aside and assigned as a margin deposit.
Forex margin is a good faith deposit that a trader puts up as collateral to initiate a trade. Essentially, it is the minimum amount that a trader needs in the trading account to open a new position. This is usually communicated as a percentage of the notional value (trade size) of the forex trade. The difference between the deposit and the full value of the trade is “borrowed” from the broker.
Each time you open a new trade, calculate how much free margin you would need to use if the trade drops to its stop loss level. In other words, if your free margin is currently $500, but your potential losses of a trade are $700 (if the trade hits stop loss), you could be in trouble. In these situations, either close some of your open positions, or decrease your position sizes in order to free up additional free margin.
As part of the Universal Account service, we are authorized to automatically transfer funds as necessary between your securities account and your futures account in order to satisfy margin requirements in either account. You can configure how you want us to handle the transfer of excess funds between accounts on the Excess Funds Sweep page in Account Management: you can choose to sweep funds to the securities account, to the futures account, or you can choose to not sweep excess funds at all.
In particular we need to modify -every- value that appears in a Position calculation to a Decimal data-type. This includes the units, exposure, pips, profit and percentage profit. This ensures we are in full control of how rounding issues are handled when dealing with currency representations that have two decimal places of precision. In particular we need to choose the method of rounding. Python supports a few different types, but we are going to go with ROUND_HALF_DOWN, which rounds to the nearest integer with ties going towards zero.
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.
Imagine that you have $10,000 on your account account, and you have a losing position with a margin evaluated at $1,000. If your position goes against you, and it goes to a $9,000 loss, the equity will be $1,000 (i.e $10,000 - $9,000), which equals the margin. Thus, the margin level will be 100%. Again, if the margin level reaches the rate of 100%, you can't take any new positions, unless the market suddenly turns around and your equity level turns out to be greater than the margin.

In a margin account, the broker uses the $1,000 as a security deposit of sorts. If the investor's position worsens and his or her losses approach $1,000, the broker may initiate a margin call. When this occurs, the broker will usually instruct the investor to either deposit more money into the account or to close out the position to limit the risk to both parties.

If you believe that a currency pair such as the Australian dollar will rise against the US Dollar you can place a buy trade on AUD/USD. If the prices rises, you will make a profit for every point that AUD appreciates against the USD. If the market falls, then you will make a loss for every point the price moves against you. Our trading platform tells you in real-time how much profit or loss you are making.


To date, we've been experimenting with the OANDA Rest API in order to see how it compared to the API provided by Interactive Brokers. We've also seen how to add in a basic portfolio replication element as the first step towards a proper event-driven backtesting system. I've also had some helpful comments on both previous articles (#1 and #2), which suggests that many of you are keen on changing and extending the code yourselves.
Trading on a margin can have varying consequences. It can influence your trading experience both positively and negatively, with both profits and losses potentially being seriously augmented. Your broker takes your margin deposit and then pools it with someone else's margin Forex deposits. Brokers do this in order to be able to place trades within the whole interbank network.
Unit Tests for Position/Portfolio - While I've not mentioned it directly in diary entries #1 and #2, I've actually been writing some unit tests for the Portfolio and Position objects. Since these are so crucial to the calculations of the strategy, one must be extremely confident that they perform as expected. An additional benefit of such tests is that they allow the underlying calculation to be modified, such that if all tests still pass, we can be confident that the overall system will continue to behave as expected.
tweet at 3:44pm: [RTRS] - U.S. CDC DIRECTOR REDFIELD SAYS RISK TO U.S. PUBLIC FROM CORONAVIRUS OUTBREAK IS LOW tweet at 3:46pm: REDFIELD SAYS THERE ARE 191 INDIVIDUALS UNDER INVESTIGATION IN U.S. AMID CORONAVIRUS OUTBREAK tweet at 3:45pm: US CDC Director Redfield: This is a significant global situation. https://t.co/Ao1Ci2OEfi tweet at 3:52pm: US declares the coronavirus a public health emergency, implementing special temporary measures $SPX
×