Ejemplo n.º 1
0
def test_QryInstrument():
    '''
    测试QryInstrument
    '''
    print ''
    print '----------------------------------------------------------------------'
    print 'test_QryInstrument():开始'
    sleep(1)
    ch = CTPChannel()
    data = CThostFtdcQryInstrumentField()
    errorID,errorMsg,responeDataList =  ch.QryInstrument(data)
    if errorID == 0 :
        print u'共收到%d数据记录' % len(responeDataList)
        for i,responeData in enumerate(responeDataList):
            print '---------------------------------%d------------------------------------' % (i + 1)
            for k,v in responeData.toDict().iteritems():
                print k,'=',v,',',
            print ''
    else :
        print u'出错:','errorID=',errorID,'errorMsg=',errorMsg

    print 'test_QryInstrument():请求完成'

    assert errorID == 0,u'请求失败'

    print 'test_QryInstrument():执行结束'
    print '----------------------------------------------------------------------'
Ejemplo n.º 2
0
def test_QryInvestorProductGroupMargin():
    '''
    测试QryInvestorProductGroupMargin
    '''
    print ''
    print '----------------------------------------------------------------------'
    print u'test_QryInvestorProductGroupMargin():开始'
    sleep(1)
    ch = CTPChannel()
    data = CThostFtdcQryInvestorProductGroupMarginField()
    startTime = datetime.now()
    errorID,errorMsg,responeDataList =  ch.QryInvestorProductGroupMargin(data)
    endTime = datetime.now()
    timeDelta = endTime - startTime
    print u'test_QryInvestorProductGroupMargin():请求共耗时%f秒' % timeDelta.total_seconds()

    if errorID == 0 :
        print u'共收到%d数据记录' % len(responeDataList)
        for i,responeData in enumerate(responeDataList):
            print '---------------------------------%d------------------------------------' % (i + 1)
            for k,v in responeData.toDict().iteritems():
                print k,'=',v,',',
            print ''
    else :
        print u'出错:','errorID=',errorID,'errorMsg=',errorMsg

    print u'test_QryInvestorProductGroupMargin():请求完成'

    assert errorID == 0 or errorMsg== u'CTP:无此权限',u'请求失败'

    print u'test_QryInvestorProductGroupMargin():执行结束'
    print '----------------------------------------------------------------------'
Ejemplo n.º 3
0
def test_call_SettlementInfoConfirm():
    '''
    交易信息确认
    '''
    ch = CTPChannel()
    requestData = CThostFtdcSettlementInfoConfirmField()
    requestData.BrokerID = brokerID
    requestData.InvestorID = userID
    requestData.ConfirmDate = ''
    requestData.ConfirmTime = ''
    result = ch.SettlementInfoConfirm(requestData)
    #print result[0],result[1],result[2]
    assert result[0] == 0
Ejemplo n.º 4
0
### 将返回参数打包成一个json接口然后发送到队列中


for name,method in onRspMethodDict.iteritems():
    print name



#%% python执行ctp接口调用例子
import os
os.chdir('/home/duhan/github/CTPConverter/test')

from channel import CTPChannel
from CTPStruct import *

ch = CTPChannel()
data = CThostFtdcQryTradingAccountField()
errorID,errorMsg,responeDataList =  ch.QryTradingAccount(data)
print errorID,errorMsg,responeDataList
print len(responeDataList)
print responeDataList[0].toDict()


#%% 使用命令行启动trader
import os
frontAddress = os.environ.get('CTP_FRONT_ADDRESS')
assert frontAddress
brokerID = os.environ.get('CTP_BROKER_ID')
assert brokerID
userID = os.environ.get('CTP_USER_ID')
assert userID