示例#1
0
def test_001(connection, options):
    ticker_id = gen_tick_id()
    subscript = ScannerSubscription()
    subscript.numberOfRows(3)
    subscript.locationCode('STK.NYSE')
    connection.reqScannerSubscription(ticker_id, subscript)
    connection.reqScannerParameters()
    short_sleep()
    connection.cancelScannerSubscription(ticker_id)
示例#2
0
文件: tws.py 项目: jessetane/2502
 def makeScannerSubscription(self, code, limit):
     sub = ScannerSubscription()
     sub.numberOfRows(limit)
     sub.instrument("STK")
     sub.scanCode(code)
     sub.locationCode("STK.US.MAJOR")
     return sub
示例#3
0
def test_001(connection, options):
    ticker_id = gen_tick_id()
    subscript = ScannerSubscription()
    subscript.numberOfRows(3)
    subscript.locationCode('STK.NYSE')
    connection.reqScannerSubscription(ticker_id, subscript)
    connection.reqScannerParameters()
    short_sleep()
    connection.cancelScannerSubscription(ticker_id)
示例#4
0
    contract_Details10 = create.create_contract('EUR', 'CASH', 'IDEALPRO',
                                                'USD')
    data_endtime = datetime.now().strftime("%Y%m%d %H:%M:%S")
    tws.reqHistoricalData(9000, contract_Details10, data_endtime, "1 M",
                          "1 day", "BID", 0, 1)
    time.sleep(3)
    tws.cancelHistoricalData(9000)

    # Market Scanners ####################################################################
    # reqScannerParameters --->   scannerParameters     self.scanner_Parameters
    #                      --->   scannerData           self.scanner_Data
    #                      --->   scannerDataEnd        self.scanner_Data_End_reqID
    #                                                   self.scanner_Data_reqID
    ###################################################################################'''
    print "Testing Market Scanners Group \n"
    subscript = ScannerSubscription()
    subscript.numberOfRows(3)
    subscript.locationCode('STK.NYSE')
    tws.reqScannerSubscription(700, subscript)
    tws.reqScannerParameters()
    time.sleep(3)
    tws.cancelScannerSubscription(700)

    # Real Time Bars #####################################################################
    # reqRealTimeBars      --->   realtimeBar           self.real_timeBar
    ###################################################################################'''
    print "Testing Real Time Bars Group \n"
    contract_Details11 = create.create_contract('EUR', 'CASH', 'IDEALPRO',
                                                'USD')
    tws.reqRealTimeBars(10000, contract_Details11, 5, "MIDPOINT", 0)
    time.sleep(10)
示例#5
0
sleep(5)

# displaying the orders status
print o.orderStatus(oid1)
print o.orderStatus(oid2)

# we cancel order 1
o.cancelOrder(oid1)
print o.orderStatus(oid1)

#############################################
# Test3: Market scanning
#############################################

# we create a scanner
subscript = ScannerSubscription() 
subscript.numberOfRows(200) 
subscript.m_instrument = 'STK' 
subscript.m_locationCode = 'STK.AMEX'
subscript.m_scanCode = "MOST_ACTIVE"
subscript.m_stockTypeFilter = 'ALL' 
subscript.m_m_abovePrice = 0.0
subscript.m_aboveVolume = 0
subscript.m_marketCapAbove = 0.0

# and execute it on the server
print str(o.scanMkt(subscript))

#############################################
# Test4: Market Data
#############################################
    def run_prog(self):
        con = ibConnection(host='127.0.0.1', port=7497, clientId=100)
        con.connect()

        # Assign the error handling function defined above
        # to the TWS connection
        con.register(self.error_handler, 'Error')

        # Assign all of the server reply messages to the
        # reply_handler function defined above
        #con.registerAll(reply_handler)
        con.register(self.scan_results, message.scannerData)
        con.register(self.get_valid_order_id, 'NextValidId')
        #con.reqIds(-1)
        time.sleep(1)
        print("Order ID", self.orderid[0])

        self.gappingup_id = self.orderid[0]
        gappingup = ScannerSubscription()
        gappingup.numberOfRows(5)
        gappingup.m_scanCode = 'HIGH_OPEN_GAP'
        gappingup.m_instrument = 'STK'
        gappingup.m_averageOptionVolumeAbove = '0'
        gappingup.m_abovePrice = '5'
        gappingup.m_aboveVolume = '100000'

        self.gappingdown_id = self.gappingup_id + 1
        gappingdown = ScannerSubscription()
        gappingdown.numberOfRows(5)
        gappingdown.m_scanCode = 'LOW_OPEN_GAP'
        gappingdown.m_instrument = 'STK'
        gappingdown.m_averageOptionVolumeAbove = '0'
        gappingdown.m_abovePrice = '5'
        gappingdown.m_aboveVolume = '100000'

        con.reqScannerSubscription(self.gappingup_id, gappingup)
        time.sleep(5)
        con.reqScannerSubscription(self.gappingdown_id, gappingdown)
        time.sleep(5)

        print(self.gapup)
        print(self.gapdown)
示例#7
0
con.register(scan_results, message.scannerData)

# Create a contract in GOOG stock via SMART order routing
goog_contract = create_contract('GOOG', 'STK', 'SMART', 'SMART', 'USD')

#Get market data stream
#con.reqMktData(1, goog_contract, '', False)

# Go long 100 shares of Google
goog_order = create_order('MKT', 100, 'BUY')

# Use the connection to the send the order to IB
#con.placeOrder(100,goog_contract, goog_order)

gappingup_id = 13851
gappingup = ScannerSubscription()
gappingup.numberOfRows(5)
gappingup.m_scanCode = 'HIGH_OPEN_GAP'
gappingup.m_instrument = 'STK'
gappingup.m_averageOptionVolumeAbove = '0'
gappingup.m_abovePrice = '5'
gappingup.m_aboveVolume = '100000'

gappingdown_id = gappingup_id + 1
gappingdown = ScannerSubscription()
gappingdown.numberOfRows(5)
gappingdown.m_scanCode = 'LOW_OPEN_GAP'
gappingdown.m_instrument = 'STK'
gappingdown.m_averageOptionVolumeAbove = '0'
gappingdown.m_abovePrice = '5'
gappingdown.m_aboveVolume = '100000'
示例#8
0
文件: ib_class.py 项目: anthonyng2/ib
                          "1 M", "1 day", "BID", 0, 1)
    time.sleep(3)
    tws.cancelHistoricalData(9000)

    
    
    
    
    # Market Scanners ####################################################################
    # reqScannerParameters --->   scannerParameters     self.scanner_Parameters
    #                      --->   scannerData           self.scanner_Data
    #                      --->   scannerDataEnd        self.scanner_Data_End_reqID    
    #                                                   self.scanner_Data_reqID  
    ###################################################################################'''        
    print "Testing Market Scanners Group \n"
    subscript = ScannerSubscription()
    subscript.numberOfRows(3)
    subscript.locationCode('STK.NYSE')
    tws.reqScannerSubscription(700, subscript)
    tws.reqScannerParameters()        
    time.sleep(3)
    tws.cancelScannerSubscription(700) 

    


    
    # Real Time Bars #####################################################################
    # reqRealTimeBars      --->   realtimeBar           self.real_timeBar
    ###################################################################################'''   
    print "Testing Real Time Bars Group \n"
示例#9
0
from ib.ext.ScannerSubscription import ScannerSubscription
from ib.ext.EClientSocket import EClientSocket

from utils import Logger

log = Logger('scanner')

msgs = queue.Queue()
wrapper = Wrapper({}, msgs)
connection = EClientSocket(wrapper)

host = "54.197.15.42"
port = 7496

connection.eConnect(host, port, 1)
subscription = ScannerSubscription()
subscription.numberOfRows(100)
subscription.instrument('STK')
subscription.locationCode('STK.US')
subscription.scanCode('TOP_PERC_GAIN')
subscription.abovePrice(1.0)
subscription.aboveVolume(1)
subscription.marketCapBelow(1000000000.0)

ticker_id = 10

log.operation('Requesting subscription')

connection.reqScannerSubscription(ticker_id, subscription)

while True:
示例#10
0
文件: server.py 项目: dm04806/systemn
	def mostactive(self, location, pricemin, pricemax):
		global scan 
		scan = []
		subscript = ScannerSubscription() 
		subscript.numberOfRows(200) 
		subscript.m_scanCode = 'MOST_ACTIVE' 
		subscript.m_instrument = 'STK' 
		subscript.m_averageOptionVolumeAbove = '' 
		subscript.m_couponRateAbove = '' 
		subscript.m_couponRateBelow = '' 
		subscript.m_abovePrice = pricemin 
		subscript.m_belowPrice = pricemax
		subscript.m_marketCapAbove = '' 
		subscript.m_marketCapBelow = '' 
		subscript.m_aboveVolume = '' 
		subscript.m_stockTypeFilter = 'ALL' 
		#subscript.locationCode('STK.NASDAQ.NMS') 
		#subscript.locationCode('STK.NYSE') 
		#subscript.locationCode('STK.AMEX') 
		subscript.locationCode(location) 
		con.reqScannerSubscription(qqqq_id, subscript) 
		sleep(10)
		return(scan)