[ARCHIVE !] Toute question de débutant, pour ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 4. - page 245

 
Stells:

dans les variables globales
Ensuite, imprimez le nom et le préfixe de l'objet.
 

Comment calculer le bénéfice d'une commande ?

if(OrderType() == 0) profitbuy += ((Bid - OrderOpenPrice())*OrderLots()*(tickvalue/ticksize))+OrderSwap()+OrderCommission();

Qu'est-ce que j'ai fait de mal ? Sur Eur/Usd cela fonctionne, mais sur Usd/Jpy cela fonctionne, mais pas correctement.

 

J'ai décidé d'essayer d'utiliser la fonction de changement d'horizon temporel, cela me semble plus facile et plus clair. Il ne compile pas. Peut-être que c'est moi, bien sûr, quelque chose de stupide. Je l'ai écrit de cette façon.

fChangePeriod' - variable non définie C:\terminal\experts/indicateurs/timeframe.mq4 (37, 12)

WM_COMMAND' - variable non définie C:Terminal/experts/indicateurs/timeframe.mq4 (62, 22)

//+------------------------------------------------------------------+
//|                                                    таймфрейм.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_chart_window
extern int nPeriod=30,P=1;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
//----
   if(P<0){fChangePeriod;P--;}
//----
   return(0);
  }
//+------------------------------------------------------------------+

void fChangePeriod(int nPeriod)
{
   int hWnd, wParam;
   
   switch(nPeriod)
   {
      case PERIOD_M1:  wParam = 33137; break;
      case PERIOD_M5:  wParam = 33138; break;
      case PERIOD_M15: wParam = 33139; break;
      case PERIOD_M30: wParam = 33140; break;
      case PERIOD_H1:  wParam = 33135; break;
      case PERIOD_H4:  wParam = 33136; break;
      case PERIOD_D1:  wParam = 33134; break;
      case PERIOD_W1:  wParam = 33141; break;
      case PERIOD_MN1: wParam = 33334; break;
   }
        
   hWnd = WindowHandle(Symbol(),Period());
        
   PostMessageA(hWnd,WM_COMMAND,wParam,0);
}
 
Je ne connais pas encore la dll, pour que ce script fonctionne, dois-je mettre cette dll dans un des dossiers ? Je suis un peu confus.
 
Vinin:

Donnez-moi le code.

Ne restez pas silencieux, dites quelque chose, est-ce que j'ai les idées claires ou pas ?

 
En ce qui concerne la bibliothèque, les fonctions WinAPI, quel est le répertoire racine où ServicesMT4.rar doit être placé ? Il suffit de regarder ServicesMT4.rar, l'a ouvert, aussi pas moyen - ouverture des programmes jure, mauvais format spécifié.
 
Dimka-novitsek:
En ce qui concerne la bibliothèque, les fonctions WinAPI, quel est le répertoire racine dans lequel vous devez enregistrer ServicesMT4.rar ? Il suffit de regarder ServicesMT4.rar, l'a ouvert, ne fonctionne pas non plus - programmes ouvreurs jurer, le mauvais format est spécifié.

Un script est inclus avec des exemples d'utilisation de toutes les fonctions de la bibliothèque. Tout peut être fait de la même manière.

L'archive doit être décompressée dans le répertoire MT4 ou décompresser tout séparément. Il existe également une instruction à 5 points.

Les archives sont ouvertes pour moi. Je viens de le vérifier. Vous ne devez pas l'inventer. Je vous recommande de lire attentivement les instructions.

Voici un exemple de conseiller expert :

#include <ServicesMT4.mqh>
void start()
  {
   int hwndChart = WindowHandle(Symbol(),Period());
   while (!IsStopped())
    {
     for (int i = 0; i < 9; i++)
      {
       ServiceSetTimeframeByNumber(hwndChart, i);
       Sleep(2000);
      }
    }
  }
 

Eh bien, je pense que j'ai lu... Les dossiers

ServicesMT4.mqh (94.1 Kb) Afficher
WinUser32.mqh (70.3 Kb) Afficher
Check_ServicesMT4.dll.mq4 (115.2 Kb)
ZH_Toutes_citations 4.10912.mq4 (8.4 Kb) Afficher

Je mets les fichiers à leur place, pas de problème.

Mais c'est 4. Décompressez l'archive avec tous ces éléments et la bibliothèque dans les répertoires MT4 dans le répertoire racine de MT4.

Je ne le comprends pas. Qu'est-ce que le répertoire racine ? Et comment supprimer le ZIP du nom de l'archive ? Oui, l'archive simplement sauvegardée dans le dossier de gauche sur mon ordinateur, donc je, il est signé là, je ne vois pas dans le nom de ZIP, il est appelé ServicesMT4.rar, vrai, l'extension est ZIP, mais comment le changer, si j'ai besoin ? Peut-être pas, mais quel est le répertoire racine ?

 
Dimka-novitsek:

Eh bien, je pense que j'ai lu... Fichiers

ServicesMT4.mqh (94.1 Kb) View
WinUser32.mqh (70.3 Kb) View
Check_ServicesMT4.dll.mq4 (115.2 Kb)
ZH_All_Quotings 4.10912.mq4 (8.4 Kb) View

Je l'ai mis sans problème là où il devait être.

Mais c'est 4. J'ai décompressé l'archive avec tous ces éléments et la bibliothèque dans les répertoires MT4 dans le répertoire MT4 racine.

Je ne le comprends pas. Qu'est-ce que le répertoire racine ? Et comment supprimer le ZIP du nom de l'archive ? Oui, l'archive simplement sauvegardée dans le dossier de gauche sur mon ordinateur, donc je, il est signé là, je ne vois pas dans le nom de ZIP, il est appelé ServicesMT4.rar, vrai, l'extension est ZIP, mais comment le changer, si j'ai besoin ? Peut-être pas nécessaire, mais quel est le répertoire racine ?

1. Les fichiers listés sont dans l'archive. Mais l'archive contient également le fichier le plus important de la bibliothèque ServicesMT4.dll elle-même. Sinon, il ne peut pas être attaché. Nous avons récemment été privés de cette possibilité.

2. Le répertoire racine de MT4 est le répertoire de votre MT4. Comment l'expliquer autrement et simplement - je ne sais pas.

Pour voir les extensions, vous devez configurer la visibilité de ces extensions dans les propriétés du dossier. Je suis très surpris que le programmeur ait désactivé la visibilité des extensions. Comme un mannequin.

4. J'espère qu'après cela, il ne sera pas difficile de renommer l'extension. Au cas où, cette opération s'effectue à partir du menu contextuel de la souris (clic droit).

5. J'ai WinRar qui ouvre ce fichier avec n'importe quelle extension. L'extension n'est nécessaire que pour associer automatiquement les fichiers aux programmes permettant de les ouvrir.

 

Veuillez me donner un indice. La situation est la suivante :


#import "Trend.ex4"

double Zena(imya,sdvig) ;

#import

Lorsque j'essaie d'importer cette fonction, le compilateur écrit : 'imya' - définition de paramètre attendue. Que dois-je faire ?