In [1]:
# utf-8
import QUANTAXIS as QA
market = QA.QA_Market(if_start_orderthreading=True)
portfolio= QA.QA_Portfolio()
# 创建两个account
# 这里是创建一个资产组合,然后在组合里面创建两个account 你可以想象成股票里面的两个策略账户
# 然后返回的是这个账户的id
a_1 = portfolio.new_account()
a_1.reset_assets(100000000)
a_1.frequence = QA.FREQUENCE.ONE_MIN
market.start()
market.connect(QA.BROKER_TYPE.BACKETEST)
Out[1]:
In [2]:
import pandas as pd
In [3]:
import threading
In [4]:
threading.enumerate()
Out[4]:
In [5]:
market.login(QA.BROKER_TYPE.BACKETEST, a_1.account_cookie, a_1)
market.order_handler.monitor
Out[5]:
In [6]:
market._sync_orders()
In [7]:
{a_1:market.broker[a_1.broker]}
Out[7]:
In [8]:
for code in ['000001', '000002', '000004', '600010', '000007','600000']:
market.insert_order(a_1.account_cookie,code=code,
price=0,
amount=1000,
time='2018-08-14 14:58:00',
towards=QA.ORDER_DIRECTION.BUY,
order_model=QA.ORDER_MODEL.MARKET,
amount_model=QA.AMOUNT_MODEL.BY_AMOUNT,
market_type=QA.MARKET_TYPE.STOCK_CN,
frequence=QA.FREQUENCE.ONE_MIN,
broker_name=QA.BROKER_TYPE.BACKETEST,
)
In [9]:
market.order_handler.monitor
Out[9]:
In [10]:
market.broker[QA.BROKER_TYPE.BACKETEST].query_orders(a_1.account_cookie,'')
Out[10]:
In [11]:
market.broker[QA.BROKER_TYPE.BACKETEST].query_orders(a_1.account_cookie,'filled')
Out[11]:
In [12]:
a_1.history_table
Out[12]:
In [13]:
a_2 = portfolio.new_account()
a_2.reset_assets(100000000)
a_2.frequence = QA.FREQUENCE.ONE_MIN
market.login(QA.BROKER_TYPE.BACKETEST, a_2.account_cookie, a_2)
Out[13]:
In [14]:
for code in ['000001', '000002', '000004', '600010', '000007','600000']:
market.insert_order(a_2.account_cookie,code=code,
price=0,
amount=1000,
time='2018-08-14 14:58:00',
towards=QA.ORDER_DIRECTION.BUY,
order_model=QA.ORDER_MODEL.MARKET,
amount_model=QA.AMOUNT_MODEL.BY_AMOUNT,
market_type=QA.MARKET_TYPE.STOCK_CN,
frequence=QA.FREQUENCE.ONE_MIN,
broker_name=QA.BROKER_TYPE.BACKETEST,
)
In [15]:
a_2.history_table
Out[15]:
In [16]:
portfolio.table
Out[16]:
In [18]:
portfolio.history_table
Out[18]:
In [21]:
a_1.orders.order_list
Out[21]:
In [24]:
a_2.orders.order_list
Out[24]: