TempIndexHistData.py 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348
  1. # -*- coding:utf-8 -*-
  2. __author__ = 'weijie'
  3. from EmQuantAPI import *
  4. import datetime
  5. import time
  6. import traceback
  7. from StockPojo import StockPojo
  8. from StockHistPojo import StockHistPojo
  9. from dbOperation import dbOperation
  10. import pandas as pd
  11. import json
  12. import array
  13. import db_config
  14. class TempIndexHistData:
  15. def toGet1(self):
  16. try:
  17. print("开始000001.SH")
  18. getDataTime = time.strftime('%Y-%m-%d',time.localtime(time.time()))
  19. sql = "select dates dates from data_hist_000001_sh order by realTime desc limit 1"
  20. db = dbOperation(db_config.db_gupiao)
  21. dates = db.query_one(sql)
  22. db.close()
  23. if dates is not None :
  24. startDate = str(dates['dates'].replace("/", "-"))
  25. dd = datetime.datetime.strptime(startDate, "%Y-%m-%d")
  26. dd = (dd + datetime.timedelta(days=1)).strftime("%Y-%m-%d")
  27. startDate = dd
  28. else:
  29. return
  30. data = c.csd(
  31. '000001.SH',
  32. "OPEN,CLOSE,HIGH,LOW,PRECLOSE,CHANGE,PCTCHANGE,VOLUME,AMOUNT,TURN,AMPLITUDE",
  33. startDate,
  34. getDataTime,
  35. "Period=1,adjustflag=1,curtype=1,Ispandas=1")
  36. print(data)
  37. data.reset_index(inplace=True)
  38. jsonData = data.to_json()
  39. text = json.loads(jsonData)
  40. stockHistPojoList = []
  41. for i in range(len(text['CODES'])):
  42. stockHistPojo = StockHistPojo()
  43. stockHistPojo.codes = text['CODES'][str(i)].replace(".", "_")
  44. if "None".strip() == str(text['OPEN'][str(i)]).strip():
  45. continue
  46. stockHistPojo.open = text['OPEN'][str(i)]
  47. stockHistPojo.close = text['CLOSE'][str(i)]
  48. stockHistPojo.high = text['HIGH'][str(i)]
  49. stockHistPojo.low = text['LOW'][str(i)]
  50. stockHistPojo.preclose = text['PRECLOSE'][str(i)]
  51. stockHistPojo.average = "0"
  52. stockHistPojo.change = text['CHANGE'][str(i)]
  53. stockHistPojo.pctchange = text['PCTCHANGE'][str(i)]
  54. stockHistPojo.volume = text['VOLUME'][str(i)]
  55. stockHistPojo.highlimit = "0"
  56. stockHistPojo.amount = text['AMOUNT'][str(i)]
  57. stockHistPojo.turn = text['TURN'][str(i)]
  58. stockHistPojo.tradestatus = "0"
  59. stockHistPojo.lowlimit = "0"
  60. stockHistPojo.amplitude = text['AMPLITUDE'][str(i)]
  61. stockHistPojo.tnum = "0"
  62. stockHistPojo.tafactor = "0"
  63. stockHistPojo.fronttafactor = "0"
  64. stockHistPojo.isststock = "0"
  65. stockHistPojo.isxststock = "0"
  66. stockHistPojo.dates = text['DATES'][str(i)]
  67. datTime = time.mktime(time.strptime(stockHistPojo.dates, "%Y/%m/%d"))
  68. year = time.localtime(datTime).tm_year # 获取年份
  69. yearDatTime = time.mktime(time.strptime(str(year) + "/01/01", "%Y/%m/%d"))
  70. month = time.localtime(datTime).tm_mon # 获取月份
  71. monthDatTime = ""
  72. if 10 > month:
  73. datTime = time.mktime(time.strptime(str(year) + "/0" + str(month) + "/01", "%Y/%m/%d"))
  74. monthDatTime = int(datTime)
  75. else:
  76. datTime = time.mktime(time.strptime(str(year) + "/" + str(month) + "/01", "%Y/%m/%d"))
  77. monthDatTime = int(datTime)
  78. weekDatTime = time.mktime(time.strptime(stockHistPojo.dates, "%Y/%m/%d"))
  79. wday = time.localtime(weekDatTime).tm_wday # 获取周
  80. dt = datetime.datetime.strptime(stockHistPojo.dates, "%Y/%m/%d")
  81. out_date = (dt + datetime.timedelta(days=-wday)).strftime("%Y/%m/%d")
  82. weekDatTime1 = time.mktime(time.strptime(out_date, "%Y/%m/%d"))
  83. #获取日
  84. dayDatTime = time.mktime(time.strptime(stockHistPojo.dates, "%Y/%m/%d"))
  85. stockHistPojo.dateYear = str(int(yearDatTime))
  86. stockHistPojo.dateMonth = str(int(monthDatTime))
  87. stockHistPojo.dateWeek = str(int(weekDatTime1))
  88. stockHistPojo.dateDay = str(int(dayDatTime))
  89. stockHistPojoList.append(stockHistPojo)
  90. i = 0
  91. key = "`realTime`,`dates`,`open`,`close`,`high`,`low`,`preclose`,`average`,`change`,`pctchange`,`volume`,`highlimit`,`amount`,`turn`,`tradestatus`,`lowlimit`,`amplitude`,`tnum`,`tafactor`,`fronttafactor`,`isststock`,`isxststock`,`date_year`,`date_month`,`date_week`"
  92. # 批量插入 每次插入500
  93. db = dbOperation(db_config.db_gupiao)
  94. while True :
  95. vlues = ""
  96. # print(i)
  97. # 如果数组数量大于500 截取前500个
  98. if len(stockHistPojoList) - i > 500 :
  99. # stockPojoList[i : 500] 等于java subList(i, 500)
  100. for stockHistPojo in stockHistPojoList[i : 500 + i]:
  101. vlues = vlues + "('"+str(stockHistPojo.dateDay)+"','"+str(stockHistPojo.dates)+"','" + str(stockHistPojo.open) + "','" + str(stockHistPojo.close) + "','" + str(stockHistPojo.high)+ "','" + str(stockHistPojo.low) + "','" + str(stockHistPojo.preclose) + "','" + str(stockHistPojo.average) + "','" + str(stockHistPojo.change) + "','" + str(stockHistPojo.pctchange) + "','" + str(stockHistPojo.volume) + "','" + str(stockHistPojo.highlimit) + "','" + str(stockHistPojo.amount) + "','" + str(stockHistPojo.turn) + "','" + str(stockHistPojo.tradestatus) + "','" + str(stockHistPojo.lowlimit) + "','" + str(stockHistPojo.amplitude) + "','" + str(stockHistPojo.tnum) + "','" + str(stockHistPojo.tafactor) + "','" + str(stockHistPojo.fronttafactor) + "','" + str(stockHistPojo.isststock) + "','" + str(stockHistPojo.isxststock) + "','" + str(stockHistPojo.dateYear) + "','" + str(stockHistPojo.dateMonth) + "','" + str(stockHistPojo.dateWeek) + "'),"
  102. vlues = vlues[:-1]
  103. db.batchInsert("data_hist_000001_sh", key, vlues)
  104. i = i + 500
  105. else :
  106. # 如果数量小于500 并且不为数量不大于标记变量
  107. if len(stockHistPojoList) > i :
  108. for stockHistPojo in stockHistPojoList[i : len(stockHistPojoList)]:
  109. vlues = vlues + "('"+str(stockHistPojo.dateDay)+"','"+str(stockHistPojo.dates)+"','" + str(stockHistPojo.open) + "','" + str(stockHistPojo.close) + "','" + str(stockHistPojo.high)+ "','" + str(stockHistPojo.low) + "','" + str(stockHistPojo.preclose) + "','" + str(stockHistPojo.average) + "','" + str(stockHistPojo.change) + "','" + str(stockHistPojo.pctchange) + "','" + str(stockHistPojo.volume) + "','" + str(stockHistPojo.highlimit) + "','" + str(stockHistPojo.amount) + "','" + str(stockHistPojo.turn) + "','" + str(stockHistPojo.tradestatus) + "','" + str(stockHistPojo.lowlimit) + "','" + str(stockHistPojo.amplitude) + "','" + str(stockHistPojo.tnum) + "','" + str(stockHistPojo.tafactor) + "','" + str(stockHistPojo.fronttafactor) + "','" + str(stockHistPojo.isststock) + "','" + str(stockHistPojo.isxststock) + "','" + str(stockHistPojo.dateYear) + "','" + str(stockHistPojo.dateMonth) + "','" + str(stockHistPojo.dateWeek) + "'),"
  110. vlues = vlues[:-1]
  111. db.batchInsert("data_hist_000001_sh", key, vlues)
  112. break
  113. db.close()
  114. except Exception as ee:
  115. print("error >>>",ee)
  116. traceback.print_exc()
  117. else:
  118. print("demo end")
  119. def toGet2(self):
  120. try:
  121. print("开始399001.SZ")
  122. getDataTime = time.strftime('%Y-%m-%d',time.localtime(time.time()))
  123. sql = "select dates dates from data_hist_399001_sz order by realTime desc limit 1"
  124. db = dbOperation(db_config.db_gupiao)
  125. dates = db.query_one(sql)
  126. db.close()
  127. if dates is not None :
  128. startDate = str(dates['dates'].replace("/", "-"))
  129. dd = datetime.datetime.strptime(startDate, "%Y-%m-%d")
  130. dd = (dd + datetime.timedelta(days=1)).strftime("%Y-%m-%d")
  131. startDate = dd
  132. else:
  133. return
  134. data = c.csd(
  135. '399001.SZ',
  136. "OPEN,CLOSE,HIGH,LOW,PRECLOSE,CHANGE,PCTCHANGE,VOLUME,AMOUNT,TURN,AMPLITUDE",
  137. startDate,
  138. getDataTime,
  139. "Period=1,adjustflag=1,curtype=1,Ispandas=1")
  140. print(data)
  141. data.reset_index(inplace=True)
  142. jsonData = data.to_json()
  143. text = json.loads(jsonData)
  144. stockHistPojoList = []
  145. for i in range(len(text['CODES'])):
  146. stockHistPojo = StockHistPojo()
  147. stockHistPojo.codes = text['CODES'][str(i)].replace(".", "_")
  148. if "None".strip() == str(text['OPEN'][str(i)]).strip():
  149. continue
  150. stockHistPojo.open = text['OPEN'][str(i)]
  151. stockHistPojo.close = text['CLOSE'][str(i)]
  152. stockHistPojo.high = text['HIGH'][str(i)]
  153. stockHistPojo.low = text['LOW'][str(i)]
  154. stockHistPojo.preclose = text['PRECLOSE'][str(i)]
  155. stockHistPojo.average = "0"
  156. stockHistPojo.change = text['CHANGE'][str(i)]
  157. stockHistPojo.pctchange = text['PCTCHANGE'][str(i)]
  158. stockHistPojo.volume = text['VOLUME'][str(i)]
  159. stockHistPojo.highlimit = "0"
  160. stockHistPojo.amount = text['AMOUNT'][str(i)]
  161. stockHistPojo.turn = text['TURN'][str(i)]
  162. stockHistPojo.tradestatus = "0"
  163. stockHistPojo.lowlimit = "0"
  164. stockHistPojo.amplitude = text['AMPLITUDE'][str(i)]
  165. stockHistPojo.tnum = "0"
  166. stockHistPojo.tafactor = "0"
  167. stockHistPojo.fronttafactor = "0"
  168. stockHistPojo.isststock = "0"
  169. stockHistPojo.isxststock = "0"
  170. stockHistPojo.dates = text['DATES'][str(i)]
  171. datTime = time.mktime(time.strptime(stockHistPojo.dates, "%Y/%m/%d"))
  172. year = time.localtime(datTime).tm_year # 获取年份
  173. yearDatTime = time.mktime(time.strptime(str(year) + "/01/01", "%Y/%m/%d"))
  174. month = time.localtime(datTime).tm_mon # 获取月份
  175. monthDatTime = ""
  176. if 10 > month:
  177. datTime = time.mktime(time.strptime(str(year) + "/0" + str(month) + "/01", "%Y/%m/%d"))
  178. monthDatTime = int(datTime)
  179. else:
  180. datTime = time.mktime(time.strptime(str(year) + "/" + str(month) + "/01", "%Y/%m/%d"))
  181. monthDatTime = int(datTime)
  182. weekDatTime = time.mktime(time.strptime(stockHistPojo.dates, "%Y/%m/%d"))
  183. wday = time.localtime(weekDatTime).tm_wday # 获取周
  184. dt = datetime.datetime.strptime(stockHistPojo.dates, "%Y/%m/%d")
  185. out_date = (dt + datetime.timedelta(days=-wday)).strftime("%Y/%m/%d")
  186. weekDatTime1 = time.mktime(time.strptime(out_date, "%Y/%m/%d"))
  187. #获取日
  188. dayDatTime = time.mktime(time.strptime(stockHistPojo.dates, "%Y/%m/%d"))
  189. stockHistPojo.dateYear = str(int(yearDatTime))
  190. stockHistPojo.dateMonth = str(int(monthDatTime))
  191. stockHistPojo.dateWeek = str(int(weekDatTime1))
  192. stockHistPojo.dateDay = str(int(dayDatTime))
  193. stockHistPojoList.append(stockHistPojo)
  194. i = 0
  195. key = "`realTime`,`dates`,`open`,`close`,`high`,`low`,`preclose`,`average`,`change`,`pctchange`,`volume`,`highlimit`,`amount`,`turn`,`tradestatus`,`lowlimit`,`amplitude`,`tnum`,`tafactor`,`fronttafactor`,`isststock`,`isxststock`,`date_year`,`date_month`,`date_week`"
  196. # 批量插入 每次插入500
  197. db = dbOperation(db_config.db_gupiao)
  198. while True :
  199. vlues = ""
  200. # print(i)
  201. # 如果数组数量大于500 截取前500个
  202. if len(stockHistPojoList) - i > 500 :
  203. # stockPojoList[i : 500] 等于java subList(i, 500)
  204. for stockHistPojo in stockHistPojoList[i : 500 + i]:
  205. vlues = vlues + "('"+str(stockHistPojo.dateDay)+"','"+str(stockHistPojo.dates)+"','" + str(stockHistPojo.open) + "','" + str(stockHistPojo.close) + "','" + str(stockHistPojo.high)+ "','" + str(stockHistPojo.low) + "','" + str(stockHistPojo.preclose) + "','" + str(stockHistPojo.average) + "','" + str(stockHistPojo.change) + "','" + str(stockHistPojo.pctchange) + "','" + str(stockHistPojo.volume) + "','" + str(stockHistPojo.highlimit) + "','" + str(stockHistPojo.amount) + "','" + str(stockHistPojo.turn) + "','" + str(stockHistPojo.tradestatus) + "','" + str(stockHistPojo.lowlimit) + "','" + str(stockHistPojo.amplitude) + "','" + str(stockHistPojo.tnum) + "','" + str(stockHistPojo.tafactor) + "','" + str(stockHistPojo.fronttafactor) + "','" + str(stockHistPojo.isststock) + "','" + str(stockHistPojo.isxststock) + "','" + str(stockHistPojo.dateYear) + "','" + str(stockHistPojo.dateMonth) + "','" + str(stockHistPojo.dateWeek) + "'),"
  206. vlues = vlues[:-1]
  207. db.batchInsert("data_hist_399001_sz", key, vlues)
  208. i = i + 500
  209. else :
  210. # 如果数量小于500 并且不为数量不大于标记变量
  211. if len(stockHistPojoList) > i :
  212. for stockHistPojo in stockHistPojoList[i : len(stockHistPojoList)]:
  213. vlues = vlues + "('"+str(stockHistPojo.dateDay)+"','"+str(stockHistPojo.dates)+"','" + str(stockHistPojo.open) + "','" + str(stockHistPojo.close) + "','" + str(stockHistPojo.high)+ "','" + str(stockHistPojo.low) + "','" + str(stockHistPojo.preclose) + "','" + str(stockHistPojo.average) + "','" + str(stockHistPojo.change) + "','" + str(stockHistPojo.pctchange) + "','" + str(stockHistPojo.volume) + "','" + str(stockHistPojo.highlimit) + "','" + str(stockHistPojo.amount) + "','" + str(stockHistPojo.turn) + "','" + str(stockHistPojo.tradestatus) + "','" + str(stockHistPojo.lowlimit) + "','" + str(stockHistPojo.amplitude) + "','" + str(stockHistPojo.tnum) + "','" + str(stockHistPojo.tafactor) + "','" + str(stockHistPojo.fronttafactor) + "','" + str(stockHistPojo.isststock) + "','" + str(stockHistPojo.isxststock) + "','" + str(stockHistPojo.dateYear) + "','" + str(stockHistPojo.dateMonth) + "','" + str(stockHistPojo.dateWeek) + "'),"
  214. vlues = vlues[:-1]
  215. db.batchInsert("data_hist_399001_sz", key, vlues)
  216. break
  217. db.close()
  218. except Exception as ee:
  219. print("error >>>",ee)
  220. traceback.print_exc()
  221. else:
  222. print("demo end")
  223. def toGet3(self):
  224. try:
  225. print("开始399006.SZ")
  226. getDataTime = time.strftime('%Y-%m-%d',time.localtime(time.time()))
  227. sql = "select dates dates from data_hist_399006_sz order by realTime desc limit 1"
  228. db = dbOperation(db_config.db_gupiao)
  229. dates = db.query_one(sql)
  230. db.close()
  231. if dates is not None :
  232. startDate = str(dates['dates'].replace("/", "-"))
  233. dd = datetime.datetime.strptime(startDate, "%Y-%m-%d")
  234. dd = (dd + datetime.timedelta(days=1)).strftime("%Y-%m-%d")
  235. startDate = dd
  236. data = c.csd(
  237. '399006.SZ',
  238. "OPEN,CLOSE,HIGH,LOW,PRECLOSE,CHANGE,PCTCHANGE,VOLUME,AMOUNT,TURN,AMPLITUDE",
  239. startDate,
  240. getDataTime,
  241. "Period=1,adjustflag=1,curtype=1,Ispandas=1")
  242. print(data)
  243. data.reset_index(inplace=True)
  244. jsonData = data.to_json()
  245. text = json.loads(jsonData)
  246. stockHistPojoList = []
  247. for i in range(len(text['CODES'])):
  248. stockHistPojo = StockHistPojo()
  249. stockHistPojo.codes = text['CODES'][str(i)].replace(".", "_")
  250. if "None".strip() == str(text['OPEN'][str(i)]).strip():
  251. continue
  252. stockHistPojo.open = text['OPEN'][str(i)]
  253. stockHistPojo.close = text['CLOSE'][str(i)]
  254. stockHistPojo.high = text['HIGH'][str(i)]
  255. stockHistPojo.low = text['LOW'][str(i)]
  256. stockHistPojo.preclose = text['PRECLOSE'][str(i)]
  257. stockHistPojo.average = "0"
  258. stockHistPojo.change = text['CHANGE'][str(i)]
  259. stockHistPojo.pctchange = text['PCTCHANGE'][str(i)]
  260. stockHistPojo.volume = text['VOLUME'][str(i)]
  261. stockHistPojo.highlimit = "0"
  262. stockHistPojo.amount = text['AMOUNT'][str(i)]
  263. stockHistPojo.turn = text['TURN'][str(i)]
  264. stockHistPojo.tradestatus = "0"
  265. stockHistPojo.lowlimit = "0"
  266. stockHistPojo.amplitude = text['AMPLITUDE'][str(i)]
  267. stockHistPojo.tnum = "0"
  268. stockHistPojo.tafactor = "0"
  269. stockHistPojo.fronttafactor = "0"
  270. stockHistPojo.isststock = "0"
  271. stockHistPojo.isxststock = "0"
  272. stockHistPojo.dates = text['DATES'][str(i)]
  273. datTime = time.mktime(time.strptime(stockHistPojo.dates, "%Y/%m/%d"))
  274. year = time.localtime(datTime).tm_year # 获取年份
  275. yearDatTime = time.mktime(time.strptime(str(year) + "/01/01", "%Y/%m/%d"))
  276. month = time.localtime(datTime).tm_mon # 获取月份
  277. monthDatTime = ""
  278. if 10 > month:
  279. datTime = time.mktime(time.strptime(str(year) + "/0" + str(month) + "/01", "%Y/%m/%d"))
  280. monthDatTime = int(datTime)
  281. else:
  282. datTime = time.mktime(time.strptime(str(year) + "/" + str(month) + "/01", "%Y/%m/%d"))
  283. monthDatTime = int(datTime)
  284. weekDatTime = time.mktime(time.strptime(stockHistPojo.dates, "%Y/%m/%d"))
  285. wday = time.localtime(weekDatTime).tm_wday # 获取周
  286. dt = datetime.datetime.strptime(stockHistPojo.dates, "%Y/%m/%d")
  287. out_date = (dt + datetime.timedelta(days=-wday)).strftime("%Y/%m/%d")
  288. weekDatTime1 = time.mktime(time.strptime(out_date, "%Y/%m/%d"))
  289. #获取日
  290. dayDatTime = time.mktime(time.strptime(stockHistPojo.dates, "%Y/%m/%d"))
  291. stockHistPojo.dateYear = str(int(yearDatTime))
  292. stockHistPojo.dateMonth = str(int(monthDatTime))
  293. stockHistPojo.dateWeek = str(int(weekDatTime1))
  294. stockHistPojo.dateDay = str(int(dayDatTime))
  295. stockHistPojoList.append(stockHistPojo)
  296. i = 0
  297. key = "`realTime`,`dates`,`open`,`close`,`high`,`low`,`preclose`,`average`,`change`,`pctchange`,`volume`,`highlimit`,`amount`,`turn`,`tradestatus`,`lowlimit`,`amplitude`,`tnum`,`tafactor`,`fronttafactor`,`isststock`,`isxststock`,`date_year`,`date_month`,`date_week`"
  298. # 批量插入 每次插入500
  299. db = dbOperation(db_config.db_gupiao)
  300. while True :
  301. vlues = ""
  302. # print(i)
  303. # 如果数组数量大于500 截取前500个
  304. if len(stockHistPojoList) - i > 500 :
  305. # stockPojoList[i : 500] 等于java subList(i, 500)
  306. for stockHistPojo in stockHistPojoList[i : 500 + i]:
  307. vlues = vlues + "('"+str(stockHistPojo.dateDay)+"','"+str(stockHistPojo.dates)+"','" + str(stockHistPojo.open) + "','" + str(stockHistPojo.close) + "','" + str(stockHistPojo.high)+ "','" + str(stockHistPojo.low) + "','" + str(stockHistPojo.preclose) + "','" + str(stockHistPojo.average) + "','" + str(stockHistPojo.change) + "','" + str(stockHistPojo.pctchange) + "','" + str(stockHistPojo.volume) + "','" + str(stockHistPojo.highlimit) + "','" + str(stockHistPojo.amount) + "','" + str(stockHistPojo.turn) + "','" + str(stockHistPojo.tradestatus) + "','" + str(stockHistPojo.lowlimit) + "','" + str(stockHistPojo.amplitude) + "','" + str(stockHistPojo.tnum) + "','" + str(stockHistPojo.tafactor) + "','" + str(stockHistPojo.fronttafactor) + "','" + str(stockHistPojo.isststock) + "','" + str(stockHistPojo.isxststock) + "','" + str(stockHistPojo.dateYear) + "','" + str(stockHistPojo.dateMonth) + "','" + str(stockHistPojo.dateWeek) + "'),"
  308. vlues = vlues[:-1]
  309. db.batchInsert("data_hist_399006_sz", key, vlues)
  310. i = i + 500
  311. else :
  312. # 如果数量小于500 并且不为数量不大于标记变量
  313. if len(stockHistPojoList) > i :
  314. for stockHistPojo in stockHistPojoList[i : len(stockHistPojoList)]:
  315. vlues = vlues + "('"+str(stockHistPojo.dateDay)+"','"+str(stockHistPojo.dates)+"','" + str(stockHistPojo.open) + "','" + str(stockHistPojo.close) + "','" + str(stockHistPojo.high)+ "','" + str(stockHistPojo.low) + "','" + str(stockHistPojo.preclose) + "','" + str(stockHistPojo.average) + "','" + str(stockHistPojo.change) + "','" + str(stockHistPojo.pctchange) + "','" + str(stockHistPojo.volume) + "','" + str(stockHistPojo.highlimit) + "','" + str(stockHistPojo.amount) + "','" + str(stockHistPojo.turn) + "','" + str(stockHistPojo.tradestatus) + "','" + str(stockHistPojo.lowlimit) + "','" + str(stockHistPojo.amplitude) + "','" + str(stockHistPojo.tnum) + "','" + str(stockHistPojo.tafactor) + "','" + str(stockHistPojo.fronttafactor) + "','" + str(stockHistPojo.isststock) + "','" + str(stockHistPojo.isxststock) + "','" + str(stockHistPojo.dateYear) + "','" + str(stockHistPojo.dateMonth) + "','" + str(stockHistPojo.dateWeek) + "'),"
  316. vlues = vlues[:-1]
  317. db.batchInsert("data_hist_399006_sz", key, vlues)
  318. break
  319. db.close()
  320. except Exception as ee:
  321. print("error >>>",ee)
  322. traceback.print_exc()
  323. else:
  324. print("demo end")