示例#1
0
def dbcontract_to_ibcontract(dbcontract):
    symbol = str(dbcontract.sym)
    localSym = str(dbcontract.local_sym)
    if str(dbcontract.secType) == 'CASH':
        symbol = str(dbcontract.sym) + str(dbcontract.cur)

    if str(dbcontract.secType) == 'FUT':
        year = str(dbcontract.contractMonth)[0:4]
        mon = str(dbcontract.contractMonth)[4:6]
        addSym = ''
        print symbol, year, int(mon)

        if int(mon) == 1:
            addSym = 'F'
            print addSym
        if int(mon) == 2:
            addSym = 'G'
        if int(mon) == 3:
            addSym = 'H'
        if int(mon) == 4:
            addSym = 'J'
        if int(mon) == 5:
            addSym = 'K'
        if int(mon) == 6:
            addSym = 'M'
        if int(mon) == 7:
            addSym = 'N'
        if int(mon) == 8:
            addSym = 'Q'
        if int(mon) == 9:
            addSym = 'U'
        if int(mon) == 10:
            addSym = 'V'
        if int(mon) == 11:
            addSym = 'X'
        if int(mon) == 12:
            addSym = 'Z'
        addSym += year[3:4]
        print addSym
        localSym += addSym
    print 'Found', localSym
    contract = Contract()
    contract.symbol = str(symbol)
    contract.secType = str(dbcontract.secType)
    contract.exchange = str(dbcontract.exch)
    contract.primaryExchange = str(dbcontract.exch)
    contract.currency = str(dbcontract.cur)
    contract.expiry = str(dbcontract.expiry)
    #contract.strike= # Strike Price
    contract.localSymbol = localSym
    return contract
示例#2
0
def get_cash_contracts():
    symList = dict()

    systemdata = pd.read_csv('./data/systems/system.csv')
    print systemdata.columns
    systemdata = systemdata.reset_index()
    for i in systemdata.index:
        #print 'Read: ',i
        system = systemdata.ix[i]
        #print system
        contract = Contract()
        symbol = system['ibsym']
        if system['ibtype'] == 'CASH':
            symbol = system['ibsym'] + system['ibcur']
            if system['ibtype'] != 'BITCOIN':
                contract.symbol = system['ibsym']
                contract.secType = system['ibtype']
                contract.exchange = system['ibexch']
                contract.currency = system['ibcur']
                if system['ibtype'] == 'FUT':
                    contract.localSymbol = system['iblocalsym']
                symList[symbol] = contract

    return symList.values()