コード例 #1
0
ファイル: StrategyManager.cs プロジェクト: ForTrade/CSharp
 internal void OnFundamental(Fundamental fundamental)
 {
     if (this.strategy != null && this.strategy.status == StrategyStatus.Running)
     {
         this.strategy.OnFundamental_(fundamental);
     }
 }
コード例 #2
0
		public override object Read(BinaryReader reader)
		{
			reader.ReadByte();
			Fundamental fundamental = new Fundamental();
			fundamental.dateTime = new DateTime(reader.ReadInt64());
			fundamental.providerId = reader.ReadInt32();
			fundamental.instrumentId = reader.ReadInt32();
			int num = reader.ReadInt32();
			for (int i = 0; i < num; i++)
			{
				fundamental.fields[i] = reader.ReadDouble();
			}
			return fundamental;
		}
コード例 #3
0
        internal virtual void OnFundamental_(Fundamental fundamental)
        {
            if (this.raiseEvents && this.instruments.Contains(fundamental.instrumentId))
            {
                this.OnFundamental(this.framework.InstrumentManager.GetById(fundamental.instrumentId), fundamental);
            }
            LinkedList <Strategy> linkedList = this.strategiesByInstrument[fundamental.instrumentId];

            if (linkedList != null)
            {
                for (LinkedListNode <Strategy> linkedListNode = linkedList.First; linkedListNode != null; linkedListNode = linkedListNode.Next)
                {
                    linkedListNode.Data.OnFundamental_(fundamental);
                }
            }
        }
コード例 #4
0
        public override object Read(BinaryReader reader)
        {
            reader.ReadByte();
            Fundamental fundamental = new Fundamental();

            fundamental.dateTime     = new DateTime(reader.ReadInt64());
            fundamental.providerId   = reader.ReadInt32();
            fundamental.instrumentId = reader.ReadInt32();
            int num = reader.ReadInt32();

            for (int i = 0; i < num; i++)
            {
                fundamental.fields[i] = reader.ReadDouble();
            }
            return(fundamental);
        }
コード例 #5
0
        private void OnFundamental(Event e)
        {
            this.data_count += 1L;
            Fundamental fundamental = (Fundamental)e;

            if (this.framework.Clock.Mode == ClockMode.Simulation)
            {
                this.framework.Clock.DateTime = fundamental.dateTime;
            }
            else
            {
                fundamental.dateTime = this.framework.clock.DateTime;
            }
            this.framework.dataManager.OnFundamental(fundamental);
            this.framework.strategyManager.OnFundamental(fundamental);
        }
コード例 #6
0
        public override void Write(BinaryWriter writer, object obj)
        {
            byte value = 0;

            writer.Write(value);
            Fundamental fundamental = (Fundamental)obj;

            writer.Write(fundamental.dateTime.Ticks);
            writer.Write(fundamental.providerId);
            writer.Write(fundamental.instrumentId);
            if (fundamental.fields != null)
            {
                writer.Write(fundamental.fields.Size);
                for (int i = 0; i < fundamental.fields.Size; i++)
                {
                    writer.Write(fundamental.fields[i]);
                }
                return;
            }
            int value2 = 0;

            writer.Write(value2);
        }
コード例 #7
0
 protected internal virtual void OnFundamental(Instrument instrument, Fundamental fundamental)
 {
 }
コード例 #8
0
ファイル: Strategy.cs プロジェクト: ForTrade/CSharp
 internal virtual void OnFundamental_(Fundamental fundamental)
 {
     if (this.raiseEvents && this.instruments.Contains(fundamental.instrumentId))
     {
         this.OnFundamental(this.framework.InstrumentManager.GetById(fundamental.instrumentId), fundamental);
     }
     LinkedList<Strategy> linkedList = this.strategiesByInstrument[fundamental.instrumentId];
     if (linkedList != null)
     {
         for (LinkedListNode<Strategy> linkedListNode = linkedList.First; linkedListNode != null; linkedListNode = linkedListNode.Next)
         {
             linkedListNode.Data.OnFundamental_(fundamental);
         }
     }
 }
コード例 #9
0
ファイル: Strategy.cs プロジェクト: ForTrade/CSharp
 protected internal virtual void OnFundamental(Instrument instrument, Fundamental fundamental)
 {
 }
コード例 #10
0
ファイル: StrategyManager.cs プロジェクト: ForTrade/CSharp
 internal void OnFundamental(Fundamental fundamental)
 {
     if (this.strategy != null && this.strategy.status == StrategyStatus.Running)
     {
         this.strategy.OnFundamental_(fundamental);
     }
 }
コード例 #11
0
ファイル: DataManager.cs プロジェクト: ForTrade/CSharp
		internal void OnFundamental(Fundamental fundamental)
		{
			this.fundamental[fundamental.instrumentId] = fundamental;
		}
コード例 #12
0
 internal void OnFundamental(Fundamental fundamental)
 {
     this.fundamental[fundamental.instrumentId] = fundamental;
 }