'全局變量,計算觸發的個數
Dim StockCount
StockCount = 0
'獲取股票池觸發事件
Sub MARKETDATA_StockPoolNotifyIng(StockPool, StatusPool, Code, Market)
'觸發的股票池數據記錄到文本文件中
Document.DebugFile "C:\GPCLog.txt",Market&Code,1
'判斷股票池有多少品種
If StockPool = "股票池" And StatusPool = "狀態池1" Then
StockCount = StockCount + 1
End If
CalcCash = 0 '計算該使用多少資金
'計算下單價格,防止出現漲停板
PleacePrice = 0
Set MyReport = marketdata.GetReportData(Code,Market)
If MyReport.SellPrice1 > 0 Then
PleacePrice = MyReport.SellPrice1
Else
PleacePrice = MyReport.NewPrice '如果賣1價格為0表示已經漲停板,取最新價計算
End If
'調試代碼
'Application.MsgOut StockCount
If StockCount = 1 Then '第一個觸發品種
CalcCash = 500000
ElseIf StockCount = 2 Then
CalcCash = 300000
ElseIf StockCount = 3 Then
CalcCash = 200000
End If
If PleacePrice > 0 And CalcCash > 0 Then
CalcVol = CalcCash / PleacePrice
call Order.Buy(0,CalcVol,PleacePrice,0,Code,Market,"",0)
Application.MsgOut "已觸發股票池下單,代碼:"&Code&" - 價格:"&PleacePrice&" - 數量:"&CalcVol
End If
End Sub