Esempio n. 1
0
    def connectServer(self):
        self.trade_conn = None
        try:
            host = self.cfgs.get('host')
            port = self.cfgs.get('port')

            qsid = self.cfgs.get('qsid')
            version = self.cfgs.get('version')
            branch_id = self.cfgs.get('branch_id')
            account_type = self.cfgs.get('account_type')
            account_no = self.cfgs.get('account_no')
            trade_account_no = self.cfgs.get('trade_account_no')
            password = self.cfgs.get('password')
            tx_password = self.cfgs.get('tx_password')
            client_account = self.cfgs.get('client_account')
            broker_account = self.cfgs.get('broker_account')

            self.logger.info('Connect To HQ server..')
            TradeX2.OpenTdx(14, "6.40", 12, 0)
            self.trade_conn = TradeX2.Logon(qsid, host, port, version,
                                            branch_id, account_type,
                                            client_account, broker_account,
                                            password, tx_password)
        except TradeX2.error, e:
            print e.message.decode('gbk')
            self.logger.error(e.message.decode('gbk').encode('utf8'))
            return None
Esempio n. 2
0
 def connectQuoteServer(self):
     self.hq_conn = None
     try:
         host = self.cfgs.get('quote_host')
         port = self.cfgs.get('quote_port')
         self.logger.info('Connect To HQ server..')
         self.hq_conn = TradeX2.TdxHq_Connect(host, port)
     except TradeX2.TdxHq_error, e:
         self.logger.error(e.message.decode('gbk').encode('utf8'))
Esempio n. 3
0
def create_connect_instance():
    try:
        host, port = random.choice(common.TDX_HQ_SERVER_LIST).split(':')
        port = int(port)
    except Exception:
        host = "101.227.73.20"
        port = 7709

    try:
        instance = TradeX2.TdxHq_Connect(host, port)
        return instance, None
    except TradeX2.TdxHq_error as err:
        return None, err.message
Esempio n. 4
0
    for inx in range(0, len(Stock_buy.stockname)):
        Stock_buy.iat[inx, 0] = Stock_buy.stockname[inx].split('.')[
            0]  # 把.SZ和.SH的字样去掉.

    total_rows = len(Stock_buy)
    #  用作标记Stock_buy的有效数据行数

    f = open("result_log.txt", 'a')
    print >> f, time.strftime("%Y%m%d %H:%M:%S", time.localtime())
    print >> f, '-------------------------------------------'
    print >> f, 'Portfolio wanted to be: '
    print >> f, Stock_buy
    print >> f, '-------------------------------------------'

    print >> f, "1、初始化TDX...\n"
    TradeX.OpenTdx(14, "6.40", 12, 0)
    clientHq = TradeX.TdxHq_Connect(HostHq.iloc[0, 0], int(HostHq.iloc[0, 1]))

    StockValue_all = DataFrame(
        np.zeros((1, 5)),
        index=['a'],
        columns=['stocknum', 'ratio', 'asset', 'amount', 'account'])
    # StockValue_all用于存储各个账号的持仓

    index = 0
    Sendamount_all = 0
    while index < account_num:
        nQsid = int(nQsids[index])
        sHost = str(sHosts[index])
        nPort = int(nPorts[index])
        sVersion = str(sVersions[index])
Esempio n. 5
0
#
#
#

# 行情服务器主机
sHost = "183.3.223.36"
nPort = 7709
L2User = "******"
#L2Password = "******"
L2Password = "******"

print "\t连接行情服务器", sHost, "... "

try:
	clientL2Hq = TradeX2.TdxL2Hq_Connect(sHost, nPort, L2User, L2Password)
except TradeX2.TdxL2Hq_error, e:
	print "error: " + e.message
	msvcrt.getch()
	sys.exit(-1)

print "\n\t连接成功!\n"

print "\n\t按任意键继续...\n"
msvcrt.getch()

#
#
#
print "\t2、查询深市股票数量...\n"
Esempio n. 6
0
#!/usr/bin/env python
# -*- coding: gb2312 -*-

import msvcrt
import sys
import TradeX2


print "\t1、初始化...\n"
TradeX2.OpenTdx(14, "6.40", 12, 0)

print "\t2、登录交易服务器...\n"


from config import *

try:
    client = TradeX2.Logon(nQsid, sHost, nPort, sVersion, nBranchID, nAccountType, sClientAccount, sBrokerAccount, sPassword, sTxPassword)
except TradeX2.error, e:
    print "error: " + e.message
    TradeX2.CloseTdx()
    msvcrt.getch()
    sys.exit(-1)

print "\n\t成功登录\n"

# print "\n\t按任意键继续...\n"
# msvcrt.getch()

#
#
Esempio n. 7
0
# # sHost = "222.173.22.53"
# # nPort = 7700
# sHost = "119.147.171.205"
# nPort = 443
#
#
# print "\n\t按任意键继续...\n"
# msvcrt.getch()

#
#
#
print "\t1、连接行情服务器", sHost, "... "

try:
	clientHq = TradeX2.TdxHq_Connect(sHost, nPort)
except TradeX2.TdxHq_error, e:
	print "error: " + e.message
	msvcrt.getch()
	sys.exit(-1)

print "\n\t连接成功!\n"

print "\n\t按任意键继续...\n"
msvcrt.getch()

#
#
#
print "\t2、查询深市股票数量...\n"
Esempio n. 8
0
    ################################################################################

    # 从csv文件读取建仓目标
    sleeptime = Stock_buy.ix[0, 'sleeptime']
    # 只读取调用了第一行数据的“sleeptime”数值。sleeptime是对股票账户循环过程中的等待时间。
    # 目前是“股票循环”内嵌于“账号循环”,暂无法对不同的股票设置不同的sleeptime.

    for inx in range(0, len(Stock_buy.stockname)):
        Stock_buy.stockname.iloc[inx] = Stock_buy.stockname[inx].split('.')[
            0]  # 把.SZ和.SH的字样去掉.

    total_rows = len(Stock_buy)
    #  用作标记Stock_buy的有效数据行数

    TradeX.OpenTdx(14, "6.40", 12, 0)

    StockValue_all = DataFrame(
        np.zeros((1, 5)),
        index=['a'],
        columns=['stocknum', 'ratio', 'asset', 'amount', 'account'])
    # StockValue_all用于存储各个账号的持
    #Accountasset_all用于存储各个账号的资产
    Accountasset_all = DataFrame(columns=['account', 'asset'])

    index = 0
    Sendamount_all = 0

    ##################################################################
    ###对账户进行循环
    while index < account_num: