Skip to content

Commit

Permalink
fix ReqScannerSubscription
Browse files Browse the repository at this point in the history
  • Loading branch information
hadrianl committed Apr 28, 2021
1 parent e61dd44 commit 65ae418
Showing 1 changed file with 12 additions and 1 deletion.
13 changes: 12 additions & 1 deletion client.go
Original file line number Diff line number Diff line change
Expand Up @@ -2248,7 +2248,7 @@ call this func to subcribe a scanner which could scan the market.
For internal use only.Use default value XYZ.
*/
func (ic *IbClient) ReqScannerSubscription(reqID int64, subscription *ScannerSubscription, scannerSubscriptionOptions []TagValue, scannerSubscriptionFilterOptions []TagValue) {
if ic.serverVersion < mMIN_SERVER_VER_SCANNER_GENERIC_OPTS {
if ic.serverVersion < mMIN_SERVER_VER_SCANNER_GENERIC_OPTS && len(scannerSubscriptionFilterOptions) > 0 {
ic.wrapper.Error(NO_VALID_ID, UPDATE_TWS.code, UPDATE_TWS.msg+" It does not support API scanner subscription generic filter options")
return
}
Expand Down Expand Up @@ -2286,6 +2286,17 @@ func (ic *IbClient) ReqScannerSubscription(reqID int64, subscription *ScannerSub
subscription.ScannerSettingPairs,
subscription.StockTypeFilter)

if ic.serverVersion >= mMIN_SERVER_VER_SCANNER_GENERIC_OPTS {
var scannerSubscriptionFilterOptionsBuffer bytes.Buffer
for _, tv := range scannerSubscriptionFilterOptions {
scannerSubscriptionFilterOptionsBuffer.WriteString(tv.Tag)
scannerSubscriptionFilterOptionsBuffer.WriteString("=")
scannerSubscriptionFilterOptionsBuffer.WriteString(tv.Value)
scannerSubscriptionFilterOptionsBuffer.WriteString(";")
}
fields = append(fields, scannerSubscriptionFilterOptionsBuffer.Bytes())
}

if ic.serverVersion >= mMIN_SERVER_VER_LINKING {
var scannerSubscriptionOptionsBuffer bytes.Buffer
for _, tv := range scannerSubscriptionOptions {
Expand Down

0 comments on commit 65ae418

Please sign in to comment.