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

data = { :ticker_id => int,

         :contract => Contract,
         :end_date_time => string,
         :duration => string,
         :bar_size => int,
         :what_to_show => string,
         :use_RTH => int, # no idea what this is
         :format_date => int
       }

Methods

message_id   send  

Public Class methods

[Source]

     # File messages.rb, line 499
499:       def self.message_id
500:         20
501:       end

Public Instance methods

[Source]

     # File messages.rb, line 503
503:       def send(server)
504:         requireVersion(server, 16)
505: 
506:         queue = [ self.class.message_id,
507:                   3, # version
508:                   @data[:ticker_id]
509:                 ]
510: 
511:         queue.concat(@data[:contract].serialize_long)
512: 
513:         queue.concat([
514:                       @data[:end_date_time],
515:                       @data[:bar_size]
516:                      ]) if server[:version] > 20
517: 
518: 
519:         queue.concat([
520:                       @data[:duration],
521:                       @data[:use_RTH],
522:                       @data[:what_to_show]
523:                      ])
524: 
525:         queue.push(@data[:format_date]) if server[:version] > 16
526: 
527:         if @data[:contract].sec_type.upcase == "BAG"
528:           queue.concat(@data[:contract].serialize_combo_legs)
529:         end
530: 
531:         queue
532:       end

[Validate]