Paper Trading Account questions after 6 months of use

Discussion in 'Interactive Brokers' started by xicaob, Feb 25, 2020.

  1. xicaob

    xicaob

    Im paper trading using IB´s TWS and have this questions so far:

    For every buy order, I attach an stop loss order (market). I have seen that somw time the market price is too low in comparison with the bid price. How do you pro people do it? My positions range are from 50k to 150K average and hold them until the stop loss order is triggered.


    My simulated account is based on USD but I trade stock from Canada, Europe, China, Australia, Japan, etc too. Having in mind my kind of trading, is it better to buy them straight away of ask to IB to buy me those amounts in the currencies I will be trading in different currencies? Interests paid, overnight fees...


    In my account there are two account, the one with 1M in funds and another one fixed that came by default by IB. Is it possible to erase the second one? I need to control the numbers (only mine) and I havent see the way to do it.


    I saw on internet that I have to pay 30% of dividend earnt by the US based companies/REITS on my portfolio. There is no tax treaty between the US and the country Im living in and have tax residency in. There is any way to avoid this? Can IB transfer the dividen payment into more stock share of those companies? Any option available?


    Can I upgrade the amount of money (cash) from 1 to 5M on simulated trading account?


    There any way of setting price alarms linked automatically with each stop loss order?


    Can I link a portfolio app or website to TWS? I do check my portfolio once, every weekend and use the Investing.com app for watchlist and tracking stop loss orders and price alerts. I do this, because it happened several times that price alerts didn’t show up on TWS nor IBKS mobile, stop loss orders didnt get triggered and, in the investing app the price alert popped.

    My portolio size is around 70-120 positions so its a lot of work and maybe I can save some precious time.


    Yesterday I decided to close all my positions in my portfolio and, with huge surprise, Then I had to trasnmit all the orders manually, one by one. Theres a better alternatve for this? Is this possible to close all my positions automatically (market prices too) on IBKR mobile?

    What happens with the "spare" currency amounts in non-USD after I closed all my positions? See the attached image.



    Thats all, my friends. Thanks for your time and Keep the profits coming!
     
  2. kmiklas

    kmiklas

    You have asked a many questions in this post that span a variety of topics. Maybe break these questions into separate threads, so that people with expertise in each question can give you a good answer.

    As a fintech guy, I can answer this one:

    > My portolio size is around 70-120 positions so its a lot of work and maybe I can save some precious time.

    The answer here is API scripts. Simply create a list or array of your positions, and write a script to loop through and check everything.
    http://interactivebrokers.github.io/tws-api/

    E.g.: A little Python script to loop through all your positions and stops and sell if the price is lower than the stop. You can easily run this at regular intervals with a scheduled task, or even a delayed loop. Note that the tuple is (TICKER, STOP PRICE):

    Code:
    position_stop = [("IBM", 145.93), ("MSFT", 184.22), ("AAPL", 300.00)]
        for p in position_stop:
            if get_market_price(p[0]) < p[1]: # If the market price is less than your stop...
                close_position(p[0])                  # sell
    
    Note that this is a simplified example. In the real world, I would have these tickers and stops in an Excel file, save it as a comma-separated version (csv), and automate loading these into the script. Furthermore, you have to subscribe to an IB market data feed to get pricing information, and there are limits. You can't call a get_market_price() function to directly retrieve a price from the MD server.

    **IMPORTANT** Stop orders are not entirely dependable. A stop does not execute when the market price drops below the stop price--it turns into a market order. You are not guaranteed to get your stop price if there's a downspike; your order is entered into the market order queue. There may be a long line eating up the book if there's a nasty downturn--and I've found that retail customers (like us) are generally last in line and get the worst prices. Also, I've been bit by stop sweeps before--where they spike the price by quickly selling and then buying back a big order. This causes all standing stops to fire, and the sell side collects a bunch of commissions. For these reasons, I don't like using stop orders... I monitor prices locally using another script on my own machine.
     
    Last edited: Feb 25, 2020
    xicaob and congrats like this.
  3. Andrea Wylan

    Andrea Wylan Sponsor

    Could you say a little more about this? Sounds interesting.
     
    xicaob, murray t turtle and kmiklas like this.
  4. @xicaob you have posted a long list of questions here. I can't answer all of them.
    I notice that some of your questions relate to the usage of multiple currencies. Your IB account is a multi-currency account. The screen shot which you provided already confirms this. IB does not automatically convert cash balances from one currency into another. Such conversions have to be done by yourself.
    When you open a position in stock in a non-BASE currency (BASE currency in your case is USD) you create a negative cash position in that non-BASE currency. Basically this means that you are borrowing money from IB in that currency. It is up to you to calculate whether you want to keep that negative cash position in that currency and incur the debit interest rate. Or that you want to sell USD (your BASE currency) to the correct amount to neutralize that non-BASE cash position. Which would mean that your USD cash position would become less, and thus that you receive less credit interest from IB. These currency transactions also incur transaction costs which you need to take into account when you make such a trading decision.
     
    xicaob likes this.
  5. No.
     
    xicaob likes this.
  6. What do you mean by this? Can you give an example?
     
  7. kmiklas

    kmiklas

    There are three points to be made here:

    1. Stop orders do not execute if the price breaches; stop orders become market orders, and are added to the market order queue. In diagram 1 below:

    A. You buy in at $300. The price dribbles down to your stop, it fires at $289.99.. what you would expect.
    B. You buy in at $300. The price violently downspikes to $278.50. When your stop loss is breached, it becomes a market order, and is added to the market sell queue. Unfortunately, you are not first in line... and others are eating through the bids on the other side of the book. Your order filled at $280.00, well below your stop.

    stop.png

    2. If there are a lot of stop orders on the book, there are a lot of commissions to be made. If the book is thin, the price can easily be spiked to collect these orders. See diagram II below.

    Here, for some reason, there are 100,000 stop loss orders at $290.00. At $1 commission per 200 shares, there's USD $50,000 in commissions sitting on the table.

    Note that there are relatively few bids on the book: 100, 300, 200, 300, and 50 for a total of 950 shares. So, you can have your buddy sell 950 shares, eat through the Bids, drive the price down to $280, and collect $50,000 in commissions.

    Typically then the price will shoot right back up.

    Pretty much impossible to prove any wrongdoing. So a trader bought 1000 shares of AAPL, and drove the price down... that's what trading is, right? Buying and selling stuff?


    stop_sweep.png

    3. Now, as an algo trader, if you monitor the price locally, on your computer, there is no stop order on the books. So, you've effectively removed yourself as a target for a "stop-sweep." All you have to do is subscribe to market data for your instrument, and do a comparison in a loop.
     
    Last edited: Feb 26, 2020
    xicaob likes this.
  8. xicaob

    xicaob

    Excuse me , I think Im mistaken. I will try to explain myself. All the orders I place (buy and stop loss) are configured to get triggered at MKT price. I have seen that when I buy straight away, I buy at a higher price, like because Im paying for the "straight away" buying. Am I mistaken?
     
  9. xicaob

    xicaob

    How can I calculate the costs of borrowing "directly" for IB against convert the amounts of Non-Base currency stocks I will be buying? E.G; If I will be buying 50K in EUR stocks, then I can convert this amount so I dont have to pay any rates or commisions or deposit directly from my bank account in EUR, GBP or the others, lloking for the best rates poosible. How do pros do this? What are the things that I have to have in mind or consider while doing this?

    The "spare" amounts are the results of the profits made with this non-base currencies traded?
     
  10. xicaob

    xicaob

    Thanks you all for the time and answers.
     
    #10     Feb 26, 2020