예제 #1
0
파일: TypesSerializer.cs 프로젝트: ifzz/FDK
		public static SoftFX.Extended.Data.FxOrder ReadFxOrder(this MemoryBuffer buffer)
		{
			var result = new SoftFX.Extended.Data.FxOrder();
			result.OrderId = buffer.ReadAString();
			result.ClientOrderId = buffer.ReadAString();
			result.Symbol = buffer.ReadAString();
			result.Price = buffer.ReadDouble();
			result.NewPrice = buffer.ReadNullDouble();
			result.InitialVolume = buffer.ReadDouble();
			result.Volume = buffer.ReadDouble();
			result.TakeProfit = buffer.ReadNullDouble();
			result.StopLoss = buffer.ReadNullDouble();
			result.Commission = buffer.ReadDouble();
			result.AgentCommission = buffer.ReadDouble();
			result.Swap = buffer.ReadDouble();
			result.Profit = buffer.ReadNullDouble();
			result.Type = buffer.ReadFxOrderType();
			result.Side = buffer.ReadTradeRecordSide();
			result.Expiration = buffer.ReadNullTime();
			result.Created = buffer.ReadNullTime();
			result.Modified = buffer.ReadNullTime();
			result.Comment = buffer.ReadWString();
			return result;
		}
예제 #2
0
파일: TypesSerializer.cs 프로젝트: ifzz/FDK
		public static SoftFX.Extended.Data.FxOrder[] ReadFxOrderArray(this MemoryBuffer buffer)
		{
			int length = buffer.ReadCount();
			var result = new SoftFX.Extended.Data.FxOrder[length];
			for(int index = 0; index < length; ++index)
			{
				result[index] = buffer.ReadFxOrder();
			}
			return result;
		}
예제 #3
0
        public SoftFX.Extended.Data.FxOrder ModifyOrder(SoftFX.Lrp.LPtr handle, string operationId, SoftFX.Extended.Data.FxOrder order, uint timeoutInMilliseconds)
        {
            using (MemoryBuffer buffer = m_client.Create())
            {
                buffer.WriteLocalPointer(handle);
                buffer.WriteAString(operationId);
                buffer.WriteFxOrder(order);
                buffer.WriteUInt32(timeoutInMilliseconds);

                int _status = m_client.Invoke(7, 12, buffer);
                TypesSerializer.Throw(_status, buffer);

                var _result = buffer.ReadFxOrder();
                return(_result);
            }
        }