|
@@ -1,10 +1,11 @@
|
|
|
# coding:utf-8
|
|
|
-from jqdatasdk import *
|
|
|
+# from jqdatasdk import *
|
|
|
import pandas as pd
|
|
|
import pymysql
|
|
|
from sqlalchemy import create_engine
|
|
|
import threading
|
|
|
from datetime import datetime as dt
|
|
|
+import datetime
|
|
|
from jqdatasdk.technical_analysis import *
|
|
|
from xtquant import xtdata, xtconstant
|
|
|
from xtquant.xttype import StockAccount
|
|
@@ -14,6 +15,7 @@ import math
|
|
|
import multiprocessing as mp
|
|
|
import os
|
|
|
import psutil
|
|
|
+import traceback
|
|
|
#原始版本
|
|
|
|
|
|
# auth('18616891214', 'Ea?*7f68nD.dafcW34d!')
|
|
@@ -91,10 +93,11 @@ class MyXtQuantTraderCallback(XtQuantTraderCallback):
|
|
|
|
|
|
def err_call_back(err):
|
|
|
print(f'问题在这里~ error:{str(err)}')
|
|
|
+ traceback.print_exc()
|
|
|
|
|
|
|
|
|
def hlfx(data, stocks, pool_list):
|
|
|
- print(f'MyPid is {os.getpid()}, now is {dt.now()},本进程list长度为{len(stocks)}')
|
|
|
+ print(f'MyPid is {os.getpid()}, now is {dt.now()}')
|
|
|
engine_stock = create_engine('mysql+pymysql://root:r6kEwqWU9!v3@localhost:3307/qmt_stocks_tech?charset=utf8')
|
|
|
print(stocks)
|
|
|
for qmt_stock in stocks:
|
|
@@ -223,7 +226,6 @@ def hlfx(data, stocks, pool_list):
|
|
|
m = m - 1
|
|
|
if m == 0:
|
|
|
df_day.loc[x, 'HL'] = 'H'
|
|
|
- engine_stock.dispose()
|
|
|
|
|
|
|
|
|
|
|
@@ -302,8 +304,10 @@ def prepare():
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
+ mp.freeze_support()
|
|
|
pus = psutil.Process()
|
|
|
pus.cpu_affinity([0, 1, 2, 3])
|
|
|
+
|
|
|
path = r'c:\\qmt\\userdata_mini'
|
|
|
# 生成session id 整数类型 同时运行的策略不能重复
|
|
|
session_id = int(time.time())
|