Class IB::OutgoingMessages::RequestMarketData
In: messages.rb
Parent: AbstractMessage

Data format is { :ticker_id => int, :contract => Datatypes::Contract }

Methods

message_id   send  

Public Class methods

[Source]

    # File messages.rb, line 73
73:       def self.message_id
74:         1
75:       end

Public Instance methods

[Source]

    # File messages.rb, line 77
77:       def send(server)
78:         queue = [ self.class.message_id,
79:                   5, # message version number
80:                   @data[:ticker_id]
81:                 ].concat(@data[:contract].serialize_long())
82: 
83:         queue.concat(@data[:contract].serialize_combo_legs
84:                      ) if server[:version] >= 8 && @data[:contract].sec_type.upcase == "BAG" # I have no idea what "BAG" means. Copied from the Java code.
85:         
86:        queue.each {|datum|
87:          server[:socket].syswrite(datum.to_s + "\0")
88:        }
89:       end

[Validate]