internal Order(int user_id, decimal original_amount, decimal actual_amount, decimal rate, FCSources fc_source, string external_data) //конструктор заявки
 {
     OrderId        = ++next_id;                                                                                                      //инкремент id предыдущей заявки
     UserId         = user_id;
     OriginalAmount = original_amount;
     ActualAmount   = actual_amount;
     Rate           = rate;
     StopLoss       = null;
     TakeProfit     = null;
     TrailingStop   = null;
     FCSource       = fc_source;
     ExternalData   = external_data;
     DtMade         = DateTime.Now;
 }
 internal TSOrder(int user_id, decimal original_amount, decimal actual_amount, decimal rate, FCSources fc_source, string external_data, decimal offset)
     : base(user_id, original_amount, actual_amount, rate, fc_source, external_data) //конструктор TS
 {
     Offset = offset;
 }
 internal static void NewOrder(OrderEvents order_event, FCSources fc_source, long func_call_id, string derived_currency, bool side, Order order) //new order => DAEMON
 {
     Queues.daemon_queue.Enqueue(new OrderMsg((int)order_event, (int)fc_source, func_call_id, derived_currency, side, order));
 }