Questions d'un "mannequin - page 91

 
x100intraday:

J'ai trouvé ce qui m'intéressait ici (je n'ai rien trouvé de tel dans l'aide) : http://zulman.googlecode.com/svn/trunk/MT5/Indicators/ColorCandles.mq5. Est-il correct de combiner dans votre indicateur ce que je demandais, ou pas vraiment, mais dans cet exemple c'est pratiqué et fonctionne sans problèmes.

Qui a dit que vous ne pouviez pas le faire de cette façon ? Il est écrit dans l'aide que vous pouvez copier dans un tampon indicateur. D'un autre indicateur.
 
Rosh:
Qui dit que vous ne pouvez pas faire ça ? Il est indiqué dans l'aide que vous pouvez copier dans le tampon de l'indicateur. D'un autre indicateur.
C'est aussi simple que cela. J'avais commencé à copier des erreurs en utilisant la construction mentionnée ci-dessus et un soupçon est apparu juste là : peut-être est-ce interdit ? Lorsque j'ai consulté la référence pour obtenir des éclaircissements, j'ai découvert qu'elle contenait de nombreux exemples de SetIndexBuffer+CopyBuffer+INDICATOR_DATA, mais avec INDICATOR_CALCULATIONS, je n'ai trouvé aucun exemple et j'ai décidé qu'il s'agissait peut-être d'une nuance qui devrait être étudiée plus en profondeur. Mais il s'est avéré que c'était plus simple.
 

Les amis, je n'arrive pas à comprendre pourquoi il y a des affaires dans le premier cas et pas d'affaires dans le second ?

void OnTick()
{
//double TIK = SymbolInfoDouble(_Symbol,SYMBOL_BID);
OPEN();
}
void OPEN()
  {
   MqlTradeRequest mrequest;                            
   MqlTradeResult mresult;                                   
      mrequest.action = TRADE_ACTION_DEAL;              
      mrequest.symbol = _Symbol;                      
      mrequest.volume = 1;    
      mrequest.price = SymbolInfoDouble(_Symbol,SYMBOL_BID);                   
      mrequest.sl = 0;                                 
      mrequest.tp = 0;                               
      mrequest.deviation = 5;                             
      mrequest.type= ORDER_TYPE_SELL;                   
      mrequest.type_filling = ORDER_FILLING_FOK;  
      OrderSend(mrequest,mresult);                       
  }

void OnTick()
{
double TIK = SymbolInfoDouble(_Symbol,SYMBOL_BID);
OPEN();
}
void OPEN()
  {
   MqlTradeRequest mrequest;                            
   MqlTradeResult mresult;                                   
      mrequest.action = TRADE_ACTION_DEAL;              
      mrequest.symbol = _Symbol;                      
      mrequest.volume = 1;    
      mrequest.price = SymbolInfoDouble(_Symbol,SYMBOL_BID);                   
      mrequest.sl = 0;                                 
      mrequest.tp = 0;                               
      mrequest.deviation = 5;                             
      mrequest.type= ORDER_TYPE_SELL;                   
      mrequest.type_filling = ORDER_FILLING_FOK;  
      OrderSend(mrequest,mresult);                       
  }
 

heh, je vous ai posé une question ? essayez de copier le code et de l'exécuter dans le testeur))) peut-être que mes mains sont mauvaises)) en fait, en théorie, la ligne

double TIK = SymbolInfoDouble(_Symbol,SYMBOL_BID);

n'affecterait pas l'opérabilité du conseiller expert.

 
AUser:

heh, je vous ai posé une question ? essayez de copier le code et de l'exécuter dans le testeur))) peut-être que mes mains sont mauvaises)) en fait, en théorie, la ligne

n'affecterait pas l'opérabilité du conseiller expert.

Je suis d'accord, mais il est préférable de fournir des détails pour la reproduction. Écrivez au Service Desk, s'il vous plaît.
Общайтесь с разработчиками через Сервисдеск!
Общайтесь с разработчиками через Сервисдеск!
  • www.mql5.com
Ваше сообщение сразу станет доступно нашим отделам тестирования, технической поддержки и разработчикам торговой платформы.
 
AUser:

heh, je vous ai posé une question ? essayez de copier le code et de l'exécuter dans le testeur))) peut-être que mes mains sont mauvaises)) en fait, en théorie, la ligne

n'affecterait pas l'opérabilité du conseiller expert.

La structure de MqlTradeRequest comporte plus de champs que vous n'en utilisez, et ils contiennent donc des déchets.
Le fait est que la variable mrequest est locale (elle est dans la pile) et que la présence ou l'absence d'autres variables locales dans la pile n'a aucune importance.
Les variables situées dans la pile affectent le contenu des champs non initialisés.
Dans un cas, vous avez de la "chance" et des valeurs adaptées à OrderSend apparaissent, alors que dans un autre cas, vous n'en avez pas.

Utilisez ZeroMemory pour remettre complètement à zéro la structure.
 

Si l'on considère les plateformes en général, l'importation de DLL est-elle un quoi ? Une exception disponible dans MQL ou la norme ?

 
220Volt:

Si vous regardez les plateformes en général, les importations de DLL représentent quoi ? Une exception disponible dans MQL ou la norme ?

Est-ce un compliment pour MQL ou ne savez-vous pas comment sont les autres plateformes ?
 
sergeev:
Est-ce un compliment pour MQL ou ne connaissez-vous pas d'autres plateformes ?
C'est une question ouverte, je me demande si cela vaut la peine de transférer la base de mes développements vers une DLL, pour une transition flexible. La perspective de tout réécrire à chaque fois ne m'enchante pas.
 
220Volt:
Je me demande si je ne devrais pas déplacer la base de mon travail vers la DLL, pour une transition plus souple.
Ou êtes-vous inquiet que le support DLL soit désactivé ?