2017-06-30 7 views
1

IBPYでいくつかの基本的なことをやってみることができますか? IBPYを使用して、私は、Googleの単一シェアの価格や現在のユーロ/ドル為替レートなど、商品の現在の入札価格を照会できるようにしたいと考えています。契約の現在の入札価格を取得する方法

私はこちらのページの一番下にある例を見つけました:

Fundamental Data Using IbPy

便利に - が、出力はやや紛らわしいです。 1つの契約の現在の入札単価/提示価格だけを画面に印刷するにはどうすればよいですか?

(ただ、いくつかのバイオインフォ - はい、私はIBPYとのpythonに新しいです - しかし、私はCと20年以上の経験を持っている)事前に

多くの種類のおかげ!あなたが言及例を使用して

+0

は、その一例として、同じことを行うが、tickPriceのためのコールバックを登録すると、ハンドラを実装します。その後、契約のための 'reqMktData'だけで、1つの引用符が必要な場合は' isShanshot'をtrueに設定する必要があります。これを試してコードを作って、やり終えたら私にコメントを残してください。 – brian

答えて

0

、とは少し変わります

import signal 

from ib.opt import ibConnection, message 
from ib.ext.Contract import Contract 


def price_handler(msg): 
    if msg.field == 1: 
     print("bid price = %s" % msg.price) 
    elif msg.field == 2: 
     print("ask price = %s" % msg.price) 


def main(): 
    tws = ibConnection(port=7497) 
    tws.register(price_handler, message.tickPrice) 
    tws.connect() 

    tick_id = 1 
    c = Contract() 
    c.m_symbol = 'AAPL' 
    c.m_secType = 'STK' 
    c.m_exchange = "SMART" 
    c.m_currency = "USD" 
    tws.reqMktData(tick_id, c, '', False) 

    signal.pause() 


if __name__ == '__main__': 
    main() 

出力:

bid price = 149.55 
ask price = 149.56 
bid price = 149.59 
ask price = 149.61 
...