Domande per principianti su MOEX - pagina 15

 
prostotrader:

e cosa dovrei fare?

 
Вадим Мотеюнас:

e cosa dovrei fare?

Cosa fai, commerci con le mani?

 
prostotrader:

Cosa fate, scambiate le mani?

 
Вадим Мотеюнас:

Disegna questo EA su un grafico commerciale (vedi file)

//+------------------------------------------------------------------+
//|                                                    Pos_price.mq5 |
//|                                      Copyright 2018 prostotrader |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018 prostotrader"
#property link      "https://www.mql5.com"
#property version   "1.00"
//---
double pos_price;
//+------------------------------------------------------------------+
//| Expert Get position price function                               |
//+------------------------------------------------------------------+
double GetPositionPrice(const string aSymbol)
  {
   double price_in=0;
   double volume_in=0;
   if(PositionSelect(aSymbol))
     {
      ulong pos_id=ulong(PositionGetInteger(POSITION_IDENTIFIER));
      if(pos_id>0)
        {
         if(HistorySelectByPosition(pos_id))
           {
            int deals = HistoryDealsTotal();
            for(int i = 0; i < deals; i++)
              {
               ulong deal_ticket=HistoryDealGetTicket(i);
               ulong order_ticket=ulong(HistoryDealGetInteger(deal_ticket,DEAL_ORDER));
               if(order_ticket>0)
                 {
                  ENUM_DEAL_ENTRY deal_entry=ENUM_DEAL_ENTRY(HistoryDealGetInteger(deal_ticket,DEAL_ENTRY));
                  if(deal_entry==DEAL_ENTRY_IN)
                    {
                     double price=HistoryDealGetDouble(deal_ticket,DEAL_PRICE);
                     double volume=HistoryDealGetDouble(deal_ticket,DEAL_VOLUME);
                     price_in+=price*volume;
                     volume_in+=volume;
                    }
                 }
              }
            if(volume_in>0)
              {
               int digits=int(SymbolInfoInteger(aSymbol,SYMBOL_DIGITS));
               return(NormalizeDouble(price_in/volume_in, digits));
              }
           }
         else
           {
            Print(__FUNCTION__,": Невозможно получить историю позиции по символу ",aSymbol);
           }
        }
      else
        {
         Print(__FUNCTION__,": Невозможно определить идентификатор позиции по символу ",aSymbol);
        }
     }
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   pos_price=GetPositionPrice(Symbol());
   ObjectCreate(ChartID(),"Pos_price_1",OBJ_LABEL,0,0,0);
   ObjectSetInteger(ChartID(),"Pos_price_1",OBJPROP_XDISTANCE,5);
   ObjectSetInteger(ChartID(),"Pos_price_1",OBJPROP_YDISTANCE,15);
//---
   ObjectSetInteger(ChartID(),"Pos_price_1",OBJPROP_COLOR,clrWhite);
   ObjectSetString(ChartID(),"Pos_price_1",OBJPROP_TEXT,"Цена позиции: "+DoubleToString(pos_price));
   ChartRedraw(ChartID());
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   ObjectDelete(ChartID(),"Pos_price_1_1");
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   pos_price=GetPositionPrice(Symbol());
   ObjectSetString(ChartID(),"Pos_price_1",OBJPROP_TEXT,"Цена позиции: "+DoubleToString(pos_price));
   ChartRedraw(ChartID());
  }
//+------------------------------------------------------------------+

Aggiunto

Aggiornato l'EA (mostra immediatamente il prezzo della posizione )

 
prostotrader:

Disegna questo EA sul grafico di trading (vedi Files)

Aggiunto

Obnoyil EA (mostra il prezzo della posizione istantaneamente)

Penso di averti frainteso o forse ti ho frainteso, volevo che la dichiarazione in mt5 coincidesse con il monitoraggio su ***

 
Вадим Мотеюнас:

Devi avermi frainteso, o devo averti frainteso io, volevo che la dichiarazione in mt5 coincidesse con il monitoraggio su ***.

E io pensavo che tu volessi il vero prezzo della posizione, non un adattamento di qualcosa a qualcosa...

Aggiunto

Né MT5 né*** non calcolano correttamente il prezzo della posizione, perché il clearing in MT5 è preso in considerazione, e*** non si sa cosa conti.

 
prostotrader:

E io pensavo che tu volessi il vero prezzo della posizione, non un adattamento di qualcosa a qualcosa...

Aggiunto

Non so cosa calc ola correttamente il prezzo di una posizione perché MT5 tiene conto del clearing in MT5 e non so cosa lo calcola in ***.

Non so se c'è qualche buon servizio di statistiche gratuito per mt5 e forts?

 
Вадим Мотеюнас:

ci sono dei buoni servizi di statistiche gratuiti per mt5 e forts?

Cosa c'è che non va nel fatto che sia gratis da me?

Conta immediatamente i profitti reali

//+------------------------------------------------------------------+
//|                                                    Pos_price.mq5 |
//|                                      Copyright 2018 prostotrader |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018 prostotrader"
#property link      "https://www.mql5.com"
#property version   "1.00"
//---
double pos_price, profit;
ENUM_POSITION_TYPE pos_type;
//+------------------------------------------------------------------+
//| Expert Get position price function                               |
//+------------------------------------------------------------------+
double GetPositionPrice(const string aSymbol)
  {
   double price_in=0;
   double volume_in=0;
   if(PositionSelect(aSymbol))
     {
      ulong pos_id=ulong(PositionGetInteger(POSITION_IDENTIFIER));
      if(pos_id>0)
        {
         if(HistorySelectByPosition(pos_id))
           {
            int deals = HistoryDealsTotal();
            for(int i = 0; i < deals; i++)
              {
               ulong deal_ticket=HistoryDealGetTicket(i);
               ulong order_ticket=ulong(HistoryDealGetInteger(deal_ticket,DEAL_ORDER));
               if(order_ticket>0)
                 {
                  ENUM_DEAL_ENTRY deal_entry=ENUM_DEAL_ENTRY(HistoryDealGetInteger(deal_ticket,DEAL_ENTRY));
                  if(deal_entry==DEAL_ENTRY_IN)
                    {
                     double price=HistoryDealGetDouble(deal_ticket,DEAL_PRICE);
                     double volume=HistoryDealGetDouble(deal_ticket,DEAL_VOLUME);
                     price_in+=price*volume;
                     volume_in+=volume;
                    }
                 }
              }
            if(volume_in>0)
              {
               int digits=int(SymbolInfoInteger(aSymbol,SYMBOL_DIGITS));
               return(NormalizeDouble(price_in/volume_in, digits));
              }
           }
         else
           {
            Print(__FUNCTION__,": Невозможно получить историю позиции по символу ",aSymbol);
           }
        }
      else
        {
         Print(__FUNCTION__,": Невозможно определить идентификатор позиции по символу ",aSymbol);
        }
     }
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   ObjectCreate(ChartID(),"Pos_price_1",OBJ_LABEL,0,0,0);
   ObjectCreate(ChartID(),"Pos_price_2",OBJ_LABEL,0,0,0);
   ObjectSetInteger(ChartID(),"Pos_price_1",OBJPROP_XDISTANCE,5);
   ObjectSetInteger(ChartID(),"Pos_price_2",OBJPROP_XDISTANCE,5);
   ObjectSetInteger(ChartID(),"Pos_price_1",OBJPROP_YDISTANCE,15);
   ObjectSetInteger(ChartID(),"Pos_price_2",OBJPROP_YDISTANCE,30);
//---
   ObjectSetInteger(ChartID(),"Pos_price_1",OBJPROP_COLOR,clrWhite);
   ObjectSetInteger(ChartID(),"Pos_price_2",OBJPROP_COLOR,clrWhite);
   if(PositionSelect(Symbol()))
   {
     pos_type = ENUM_POSITION_TYPE(PositionGetInteger(POSITION_TYPE));
     pos_price=GetPositionPrice(Symbol());
     switch(pos_type)
     {
       case POSITION_TYPE_SELL:
         profit = pos_price - SymbolInfoDouble(Symbol(), SYMBOL_LAST);
       break;
       case POSITION_TYPE_BUY:
       profit = SymbolInfoDouble(Symbol(), SYMBOL_LAST) - pos_price;
       break;
     }
     ObjectSetString(ChartID(),"Pos_price_1",OBJPROP_TEXT,"Цена позиции: " + DoubleToString(pos_price));
     ObjectSetString(ChartID(),"Pos_price_2",OBJPROP_TEXT,"Текущий профит: " + DoubleToString(profit));
   }
   else
   {
     ObjectSetString(ChartID(),"Pos_price_1",OBJPROP_TEXT,"Цена позиции: 0");
     ObjectSetString(ChartID(),"Pos_price_2",OBJPROP_TEXT,"Текущий профит: 0");
   }  
   ChartRedraw(ChartID());
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   ObjectDelete(ChartID(),"Pos_price_1");
   ObjectDelete(ChartID(),"Pos_price_2");
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   if(PositionSelect(Symbol()))
   {
     pos_type = ENUM_POSITION_TYPE(PositionGetInteger(POSITION_TYPE));
     pos_price=GetPositionPrice(Symbol());
     switch(pos_type)
     {
       case POSITION_TYPE_SELL:
         profit = pos_price - SymbolInfoDouble(Symbol(), SYMBOL_LAST);
       break;
       case POSITION_TYPE_BUY:
       profit = SymbolInfoDouble(Symbol(), SYMBOL_LAST) - pos_price;
       break;
     }
     ObjectSetString(ChartID(),"Pos_price_1",OBJPROP_TEXT,"Цена позиции: " + DoubleToString(pos_price));
     ObjectSetString(ChartID(),"Pos_price_2",OBJPROP_TEXT,"Текущий профит: " + DoubleToString(profit));
   }
   else
   {
     ObjectSetString(ChartID(),"Pos_price_1",OBJPROP_TEXT,"Цена позиции: 0");
     ObjectSetString(ChartID(),"Pos_price_2",OBJPROP_TEXT,"Текущий профит: 0");
   }
   ChartRedraw(ChartID());
  }
//+------------------------------------------------------------------+
 
prostotrader:

Cosa c'è che non va nel mio scrocco?

Ho bisogno di qualcosa come un registro delle transazioni con rinnovo automatico della storia delle transazioni, per analizzare le statistiche del mio commercio, su forex *** attraverso mt4 funziona e conta tutto correttamente (almeno lo stato da mt4 coincide con i numeri ***). collegato il conto da forts figure diverse ... così ho chiesto. ho pensato che forse in mt5 bisogno di qualcosa di hack

Пользовательский интерфейс - Начало работы - MetaTrader 5
Пользовательский интерфейс - Начало работы - MetaTrader 5
  • www.metatrader5.com
Интерфейс платформы предоставляет доступ ко всем инструментам, необходимым для торговли на финансовых рынках. Он включает в себя различные меню, панели инструментов и служебные окна. Главное меню В главном меню собраны практически все команды и функции, которые можно выполнять в торговой платформе. Оно позволяет работать с графиками...
 
Вадим Мотеюнас:

Ho bisogno di un qualche tipo di registro con l'aggiornamento automatico della cronologia delle operazioni per analizzare le mie statistiche di trading, su forex ***mt4 funziona e conta correttamente (almeno le statistiche da mt4 corrispondono ai numeri ***), ho collegato un conto da Forti i numeri sono diversi ... così ho pensato che forse in mt5 è necessario qualcosa da hackerare

"Hack" non ha senso, hai solo bisogno di

Ho pensato che forse hai bisogno di hackerare qualcosa in mt5.

Scrivi i tuoi termini di riferimento e chiedi qui

https://www.mql5.com/ru/job

Торговые приложения для MetaTrader 5 на заказ
Торговые приложения для MetaTrader 5 на заказ
  • www.mql5.com
1. мы задаём период(например неделя вперёд или сутки), которые сразу же разрисовываются полосками временных периодов по нашему желанию от м5 и до W1(с стандартным выбором цветов, толщин линий, пунктиров и т.п.) как в любом индикаторе. Добавление этих полос по выбору- можем хоть 2 , хоть все добавить. И присвоить им цвет, тип , толщину и т.п. А...
Motivazione: