/
lzStockProcess.py
61 lines (53 loc) · 2.07 KB
/
lzStockProcess.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# -*- coding: utf-8 -*-
import lzStockSell
from lzStockEnv import envGetcandidateStock, monitorStates
from lzStockHq import getVerboseStockHq, getStockHq
from lzStockHumanNotice import humanNoticeProcess
from lzStockType import hq, mn
from lzStockSimulater import smUpdateStockToDb, smGetStockFromDb, smBuyStock
from lzStockDebug import debugPrint
def getCandidateStockHq():
candidateStock = envGetcandidateStock()
for stockCode in candidateStock:
candidateStockHq = getStockHq(stockCode)
print(candidateStockHq)
def initializeMonitorStructure(handStock):
print("initializeMonitorStructure ...")
for stockCode in handStock:
monitorStates[stockCode] = [0,0,' ']
lzStockSell.zstdInitialize(handStock)
def monitorInHandStockHq(handStock):
for stockCode in handStock:
inHandStockHq = getVerboseStockHq(stockCode)
if( len(inHandStockHq) < 2):
print("monitorInHandStockHq: Can't get the verbose %s hq"%stockCode)
continue
if( (float)(inHandStockHq[hq.price]) == 0.0):
debugPrint("monitorInHandStockHqDB: hq.price is not right !")
continue
noticeFlag = lzStockSell.zstdFunction(stockCode, inHandStockHq)
if (noticeFlag == 1 and monitorStates[stockCode][mn.state] == 1):
noticeString = stockCode + ' ' + inHandStockHq[hq.name] + ' ' + inHandStockHq[hq.price]
humanNoticeProcess(noticeString)
return
def monitorInHandStockHqDB(handStock):
for stockCode in handStock:
inHandStockHq = getVerboseStockHq(stockCode)
if( len(inHandStockHq) < 2):
print("monitorInHandStockHqDB: Can't get the verbose %s hq"%stockCode)
continue
if( (float)(inHandStockHq[hq.price]) == 0.0):
debugPrint("monitorInHandStockHqDB: hq.price is not right !")
continue
noticeFlag = lzStockSell.zstdFunction(stockCode, inHandStockHq)
if (noticeFlag == 1 and monitorStates[stockCode][mn.state] == 1):
smUpdateStockToDb(inHandStockHq[hq.price], handStock[stockCode][3])
return
def realInterestStock(handStock):
monitorInHandStockHq(handStock)
return
def simulaterInterestStock(handStock):
monitorInHandStockHqDB(handStock)
return
if __name__ == '__main__':
monitorInHandStockHq()