Frequently Asked Questions


Backtesting and Live Trading does not yield the same result, why?

There are two big differences between backtesting your strategy and running it live with virtual (or real) portfolio.

  • Backtest is run on EOD (end-of-day) data with trades executing on closing prices. When strategy runs live (either in virtual or live portfolio), then it executes with real-time data (if you are ELITE member) or 15-minute delayed data (if you are PREMIUM member). Backtest should only be used to validate overall direction of your strategy.
  • Past performance does not guarantee future performance. Since you already know how the market has performed in the last 5 years, you can create a strategy (unknowingly) that gives very good result in backtest. The same result won’t replicate if you run the strategy live forward in time.

I’ve ‘x' margin amount in my broker account but the system is not using the margin amount. Isn’t the margin amount included or excluded while performing automated trades?

In your automation settings, if you have set any value in “Reserved Cash” parameter then your margin amount will be excluded. The system will use your Usable Cash as the new buying power and subtract the reserved cash from it and use it to invest in new trades. But if you haven’t specified any “Reserved Cash”, then the system will use your full buying power including the margin amount.

What is this Usable Cash I see in my broker account page?

Usable Cash represents that actual cash in your broker account that excludes any borrowed amount (margin amount or amount gained from short selling) and can be used in further new investment. This parameter is only used by the system if you specify any reserved cash value in your Automation Settings. If you do not specify any reserved cash, then your portfolio full buying power is used to perform the automated trades.

What are the caveats I should be aware of when virtual trading and live trading?

Running same strategy in virtual portfolio and in broker account may not yield exactly same result. Differences exist between running strategy against virtual (simulated) broker vs real broker. As your strategy generates buy/sell signals, it submits the trade orders to our simulated broker if it’s running in virtual portfolio, or real broker if it running with your broker account. The difference arises because the price at which the submitted orders are executed won’t be exactly the same. For e.g, Interactive Broker may buy a stock at $50.12 and the simulated broker may buy a stock at $50.13 even if the order is submitted exactly at the same time.

This difference is minor and this will be true for any two brokers (e.g Fidelity vs ETrade). But this small difference may cause the result to diverge significantly. For instance, if you had a stop loss set, and the stock drops in price just enough to trigger stop loss for $50.13 and not for $50.12, then virtual broker will close out the position but the stock remains in Interactive Broker account. This will cause more differences as the strategy continues because buying power increases in one portfolio and not the other.

We recommend users to develop a strategy that is resilient to these differences before deploying it live with real broker account. If the strategy works overall, then even with these differences, you should still expect a positive return overall.

What does this error mean "Timeout period can not be greater than 1 for IB” that I see in my IB account?

Unlike virtual portfolio, where you can set any value for timeout period, in IB account you cannot set timeout greater than 1. This is because of the limitation with IB integration. When your IB account is connected to Investfly, we only get today’s completed orders from your account. Any open position that was not opened today could have been opened yesterday or any ’n' days before. This lack of information limits us to apply timeout period more than 1.

If my Alert condition has expired. What does that mean?

Investfly automatically deactivates your alert after 3 months to keep our server state clean. You can re-activate your alert from the alert page. After re-activation the alert expiration date will be extended by 3 months.

How do repeatable alert works?

If you choose Repeatable Alert then you will get a notification every time your alert condition matches. For example: You set alert on AAPL with condition(lastprice > 104). You will get a notification every time AAPL price crosses over 104.

What is Re-trigger Period on repeatable alert?

Retrigger Period is a time interval expressed in number of days during which you won't get next alert even if your condition satisfies. The first alert is not applicable for Retrigger Period. Retrigger Period can be of 1 day to Any number of days. For example: You set alert on GOOG with condition(RSI(14) < 50) and set Retrigger Period for 20 days. It means once Google's RSI(14) crosses below 50 you will get your first notification and after that you won't get any notification of this alert for 20 days even if this condition satisfy again during that period.

After building my alert condition I click on "Run as Screener" button but it doesn't work. Why not?

Your browser might have disabled the pop-up for Investfly. Please set your browser to allow pop-ups from Investfly.com and hit "Run as Screener" again.

Does Investfly charge any broker fee for virtual trading?

Yes, for every trade performed in virtual portfolio (manual or automated), a $5 fee is deducted from your portfolio amount.


[an error occurred while processing this directive]