Gain's historical tick data

Discussion in 'Data Sets and Feeds' started by andrewbee, Mar 5, 2009.

  1. Hi,

    Someone please tell me if I'm reading this correctly. I downloaded a sample of their tick data for GBP/USD. Here are a couple of sample rows:

    692083502,GBP/USD,2009-02-03 05:33:20.000,1.416700,1.417200,D
    692083519,GBP/USD,2009-02-03 05:33:21.000,1.416600,1.417100,D

    As you can see, the bid/ask spread is 5 pips in both cases. As a newbie to forex, does this mean that to make a round-turn trade, I would pay 5 pips to them as the broker? That's $50 on $100k trade. Not cheap. And sometimes the spread is as high has 19 pips. Really not cheap in that case.

  2. DaveN


    I guess the best answer is a solid *maybe*. You are looking at a proxy for the market. What the real market is, unfortunately, difficult to see, especially as a retail trader. Banks will trade bank-to-bank on the Interbank market, and trades won't post for all to see on a centralized exchange, as you may be accustomed to seeing.

    So, in the best case, you might see many of the large banks bid and ask prices if you are trading directly on the Interbank market. Otherwise, the closest you may get is an ECN. But even so, and ECN is just a localized market of traders putting up bids and offers. In some or many cases, your bid or offer will get sent to the Interbank if the larger market crosses it.

    It's probably best to ignore the true spread of the market for figuring your trading costs. As a retail trader, you might get your limit filled on an ECN, but that will depend on liquidity, your size, and the near term move of the market. I consider it a bonus to get a fill this way. The norm is to expect to pay up and enter across the book: buy the offer or sell into the bid.

    You may dispute this, and it's one person's opinion only, but over many, many trades, I've found that either the market will need to move into my limit or I pay across that spread to change my position. Either way, I pay it as a cost of doing business.

    The real question is "How far was that bid that I hit from the "real" bids in the Interbank market?" That is of course, hard to answer, but it's clearly less than the full spread. I'd compare the spread you are referring to with some other brokers as well as an ECN. Let's choose OandA, as an example because they record and make available their historical spreads. During peak market times, the spread looks to be about 2.5 to 3.0. An ECN like Interactive Brokers may be 2.0. So, you could say roughly that you are "padded" by about 1.5 pips on either side (I'm assuming that the broker makes their spreads from the center of the market, although you'll often see that this can be biased to a bullish or bearish slant if you watch multiple feeds.)

    Roughly speaking then, you would be paying an extra 1.5 pips on each side of the transaction. So, I'd answer your original question by saying "about 3 pips."

    But you aren't actually being charged an additional fee. All of this discussion is about costs that are built into the transaction with these types of dealing desk brokers. If you make a gross profit on the result of your trade, it's yours to keep. Gross profit = net profit and gross loss = net loss. There will not be a separate commission charged.
  3. Thanks for the very detailed and helpful reply. That pretty much clears up the question of the spreads. What their data seems to lack, though, is the "last", i.e. the last price for a settled trade. I assume this is again because you aren't dealing with a centralized exchange?

    If so, what assumptions should I make about likely fills as a system developer? I want to use this data for backtesting, but am not sure whether to just "split the difference" and approximate the market by taking the number in the middle of the spread as an average for where I would likely get filled.

    If it makes any difference, I am leaning towards using IB as my forex broker.
  4. DaveN


    That's exactly right. There's no National Quote System like in equities on OTC. And this is essentially OTC trading. So all the feed activity during the day are quotation changes and updates.
    No datafeed can give you a true LAST as a quote. Most will synthesize those, and it depends on the broker. Some use the bid as the last, others will use the average of the bid and ask. I think that for backtesting you could assume either one as long as you remain consistent.

    Another consideration for your backtesting will be the assumptions that you apply. For me, I will count a fill or an exit only when the historical price overlaps mine by the amount of the spread or greater. This is conservative, and you could use 1/2 the spread, or apply it only on the sell side if you are assuming bid = last. And then you'll need to adjust your entry amount by that difference to properly represent your fill. How you do that will depend on the software that you are using to do your analysis.

    Another consideration is your trading style. I'm a fader. That is, I limit into a position as it is moving into me. Typically, I receive price improvement on my fills. Being conservative, I don't count that. But if I were a follower, looking to enter in the direction of a move, I'd probably adjust my entry price by even more than above to account for slippage.

    A less accurate way to test might be to run the backtest and apply a charge or cost to each transaction for slippage. It's less accurate because there are fills in the test that would never have occurred in real time, for the better or worse.
  5. Thanks again - that's extremely helpful stuff.

    I also am a fader. I've developed a successful futures trading system based on this, but am looking to branch out into FX. Hence the newbie questions - the lack of a single exchange is going to take some getting used to.

    Best of trading to you.