ligne 178 erreur : 'Close' - une variable constante ne peut pas être passée comme référence
Consultez ce fil de discussion : https://www.mql5.com/en/forum/175337 pour obtenir les versions correctes (et les versions mql originales, pas les versions décompilées) de cet indicateur.
Bonjour tout le monde, s'il vous plaît, un codeur de haut niveau peut-il coder cette stratégie. Vous trouverez ci-joint une capture d'écran du système.ce système est conçu uniquement pour les options binaires mais peut être utilisé dans le forex aussi. Ce système a été conçu uniquement pour les options binaires mais peut être utilisé sur le forex également. maintenant à propos du système : je ne prends des transactions qu'à partir des signaux générés par les indicateurs de la première et de la deuxième sous-fenêtre. les lignes vertes et rouges vous montrent un signal typique d ' achat ou de vente lorsque toutes les conditions sont réunies. pour un signal d'achat : smfisher transform 3 doit être bleu clair, flèche renko maker ; VERT et petite boîte verte, Pcci doit être au-dessus de la ligne centrale Solar wind of joy no-repaint : vert fisher non-repaint : vert
Mladen, j'ai des questions. Y a-t-il une possibilité de connecter lavaleur d' entrée par ce code :
main.cpp (adaptateur)
#include "stdafx.h"#include "NSNetwork.h"extern"C" __declspec(dllexport) int __stdcall CalcNeuralNet(
LPCWSTR dllPath_u, LPCWSTR weightsPath_u,
double* inputs, double* outputs)
{
// Transform the lines from Unicode to normal ones
CString dllPath (dllPath_u);
CString weightsPath (weightsPath_u);
// Create neuronet
NSRecallNetwork nn(dllPath);
if (!nn.IsLoaded()) return (1);
// Load balancesif (nn.LoadWeights(weightsPath) != 0) return (2);
// Pass input data and calculate the outputif (nn.GetResponse(1, inputs, outputs) != 0) return (3);
return0;
}
AND CODE the advisor:
1. Ici, la question principale. Est-il possible de remplacer le tableau de utilisé (mais dans un fichier qui a exporté la valeur des bougies en quelque sorte déplace l'histoire de cinq barres dans le passé une ligne vers le bas). Je pense que l'adaptateur dll lui-même est universel.
Et puis je voudrais changer le conseiller de code - à la fois ici tableau de démarrage au prix actuel :
a) remplacer le tableau de démarrage des indicateurs de prix à la séquence linéaire de plusieurs indicateurs et OHLC (ne sais pas combien 30 -300, les barres ?).
b) combien les dernières valeurs de prix et d'indicateurs, et comment il devrait être connecté à l'arrimage avec les fichiers de la bibliothèque utilisée de Neurosolyutions.
с) construction du modèle prédit de bougies. mais plutôt il est nécessaire de modifier le conseiller à l'indicateur...
p.s. si vous pouvez fixer le code pour afficher le code - vous pouvez utiliser n'importe lequel des noms des indicateurs (échantillon 1, 2 ...). il vise à construire - ligne, le Сlosing price (colonne, que j'ai choisi pour les prédictions)...
2. Une autre façon de sortir (meilleure façon) : Si c'est rationnel - je vous demande de partager l'échantillon (si vous les possédez) indicateur de réseau neuronal (NS), travaillant avec au moins deux indicateurs (pour plusieurs) de MT4.
inputdouble Lots = 0.1;
//+------------------------------------------------------------------+// Connect the DLL adapter, using which we are going to use the DLL neuronet created in NeuroSolutions#import "NeuroSolutionsAdapter.dll"int CalcNeuralNet(string dllPath, string weightsPath, double& inputs[], double& outputs[]);
#import //+------------------------------------------------------------------+class CNeuroSolutionsNeuralNet
{
private:
string dllPath; // Path to a DLL neuronet created in NeuroSolutionsstring weightsPath; // Path to a file of the neuronet balancespublic:
double in[20]; // Neuronet inputs - OHLC of 5 barsdouble out[1]; // Neuronet outputs - Close of a current bar
CNeuroSolutionsNeuralNet();
bool Calc();
};
//+------------------------------------------------------------------+void CNeuroSolutionsNeuralNet::CNeuroSolutionsNeuralNet()
{
string terminal = TerminalInfoString(TERMINAL_PATH);
dllPath = terminal + "\\MQL5\\Files\\NeuroSolutions\\WeekPattern.dll";
weightsPath = terminal + "\\MQL5\\Files\\NeuroSolutions\\WeekPattern.nsw";
}
//+------------------------------------------------------------------+bool CNeuroSolutionsNeuralNet::Calc()
{
// Get current quotes for the neuronetMqlRates rates[], rate;
CopyRates(Symbol(), Period(), 0, 6, rates);
ArraySetAsSeries(rates, true);
// Fill the array of input data of the neuronetdouble zlevel=0;
for (int bar=0; bar<=5; bar++)
{
rate = rates[bar];
// 0 bar is not taken for inputif (bar==0) zlevel=rate.open; // level of price calculation// 1-5 bars are inputedelse
{
int i=(bar-1)*4; // input number
in[i ] = rate.open -zlevel;
in[i+1] = rate.high -zlevel;
in[i+2] = rate.low -zlevel;
in[i+3] = rate.close-zlevel;
}
}
// Calculate the neuronet in the NeuroSolutions DLL (though the DLL adapter)int res = CalcNeuralNet(dllPath, weightsPath, in, out);
switch (res)
{
case1: Print("Error of creating neuronet from DLL \"", dllPath, "\""); return (false);
case2: Print("Error of loading balances to neuronet from the file \"", weightsPath, "\""); return (false);
case3: Print("Error of calculation of neuronet"); return (false);
}
// Output of the neuronet has appeared in the array out, you shouldn't do anything with itreturn (true);
}
//+------------------------------------------------------------------+
CNeuroSolutionsNeuralNet NN;
double Prognoze;
//+------------------------------------------------------------------+#include <Trade\Trade.mqh>//+------------------------------------------------------------------+voidOnTick()
{
// Get the price prediction from the neuronetif (NN.Calc()) Prognoze = NN.out[0];
else Prognoze = 0;
// Perform necessary trade actions
Trade();
}
//+------------------------------------------------------------------+void Trade()
{
// Close an open position if it is opposite to the predictionif(PositionSelect(_Symbol))
{
long type=PositionGetInteger(POSITION_TYPE);
bool close=false;
if((type == POSITION_TYPE_BUY) && (Prognoze <= 0)) close = true;
if((type == POSITION_TYPE_SELL) && (Prognoze >= 0)) close = true;
if(close)
{
CTrade trade;
trade.PositionClose(_Symbol);
}
}
// If there is no positions, open one according to the predictionif((Prognoze!=0) && (!PositionSelect(_Symbol)))
{
CTrade trade;
if(Prognoze > 0) trade.Buy (Lots);
if(Prognoze < 0) trade.Sell(Lots);
}
}
//+------------------------------------------------------------------+
Mladen, j'ai des questions. Y a-t-il une possibilité de connecter lavaleur d' entrée par ce code :
main.cpp (adaptateur)
1. Ici, la question principale. Est-il possible de remplacer le tableau de utilisé (mais dans un fichier qui a exporté la valeur des bougies en quelque sorte déplace l'histoire de cinq barres dans le passé une ligne vers le bas). Je pense que l'adaptateur dll lui-même est universel.
Et puis je voudrais changer le conseiller de code - à la fois ici tableau de démarrage au prix actuel :
a) remplacer le tableau de démarrage des indicateurs de prix à la séquence linéaire de plusieurs indicateurs et OHLC (ne sais pas combien 30 -300, les barres ?).
b) combien les dernières valeurs de prix et d'indicateurs, et comment il devrait être connecté à l'arrimage avec les fichiers de la bibliothèque utilisée de Neurosolyutions.
с) construction du modèle prédit de bougies. mais plutôt il est nécessaire de modifier le conseiller à l'indicateur...
p.s. si vous pouvez fixer le code pour afficher le code - vous pouvez utiliser n'importe lequel des noms des indicateurs (échantillon 1, 2 ...). il vise à construire - ligne, le Сlosing price (colonne, que j'ai choisi pour les prédictions)...
2. Une autre façon de sortir (meilleure façon) : Si c'est rationnel - je vous demande de partager l'exemple (si vous les possédez) d'indicateur de réseau neuronal, travaillant avec au moins deux indicateurs (pour plusieurs) de MT4.
Désolé, je ne suis pas familier avec NeuroSolutions donc je ne peux pas aider dans ce domaine
Bonjour Mladen, est-il possible de retarder le signal d'un indicateur à un moment défini personnellement. Par exemple, j'ai un indicateur de flèche qui montre parfois des flèches du début d'une bougie sur un graphique de 30 minutes sur la bougie actuelle, mais je veux ignorer de tels signaux parce qu'ils ont la plupart du temps tendance à se reproduire/disparaître. Je préférerais qu'il y ait un indicateur/script ou qu'il soit possible de régler l'indicateur lui-même pour qu'il commence à montrer des signaux à un moment précis, par exemple un graphique de 10 minutes/30 minutes, 20 minutes/1 heure, etc.
Bonjour Mladen, est-il possible de retarder le signal d'un indicateur à un moment défini personnellement. Par exemple, j'ai un indicateur de flèche qui montre parfois des flèches du début d'une bougie sur un graphique de 30 minutes sur la bougie actuelle, mais je veux ignorer de tels signaux parce qu'ils ont la plupart du temps tendance à se reproduire/disparaître. Je préférerais qu'il y ait un indicateur/script ou qu'il soit possible de régler l'indicateur lui-même pour qu'il commence à montrer des signaux à un moment précis, par exemple un graphique de 10 minutes/30 minutes, 20 minutes/1 heure, etc.
Merci d'avance.
Cela ne peut pas être fait pour un signal qui est sur une barre fermée.
Même sur une barre ouverte, il est douteux de savoir dans quel délai cela peut être fait (dans certains cas, cela ne fonctionnerait pas).
Mladen, j'ai des questions. Y a-t-il une possibilité de connecter lavaleur d' entrée par ce code :
main.cpp (adaptateur)
1. Ici, la question principale. Est-il possible de remplacer le tableau de utilisé (mais dans un fichier qui a exporté la valeur des bougies en quelque sorte déplace l'histoire de cinq barres dans le passé une ligne vers le bas). Je pense que l'adaptateur dll lui-même est universel.
Et puis je voudrais changer le conseiller de code - à la fois ici tableau de démarrage au prix actuel :
a) remplacer le tableau de démarrage des indicateurs de prix à la séquence linéaire de plusieurs indicateurs et OHLC (ne sais pas combien 30 -300, les barres ?).
b) combien les dernières valeurs de prix et d'indicateurs, et comment il devrait être connecté à l'arrimage avec les fichiers de la bibliothèque utilisée de Neurosolyutions.
с) la construction du modèle prédit de bougies. mais plutôt il est nécessaire de modifier le conseiller à l'indicateur ...
p.s. si vous pouvez fixer le code pour afficher le code - vous pouvez utiliser n'importe lequel des noms des indicateurs (échantillon 1, 2 ...). il vise à construire - ligne, le Сlosing price (colonne, que j'ai choisi pour les prédictions)...
2. Une autre façon de sortir (meilleure façon) : Si c'est rationnel - je vous demande de partager l'échantillon (si vous les possédez) indicateur de réseau neuronal (NS), travaillant avec au moins deux indicateurs (pour plusieurs) de MT4.
Si vous avez une Neurosolutions légale cela devrait fonctionner
Pouvez-vous s'il vous plaît m'aider à incorporer une stratégie pouraider àsurfer sur lemomentum des retracements/pullbacks/reversals/bounce back dans des cadres à court terme en modifiant votre 3 MA cross avec aert mtf 3.03 ?
Lorsque le croisement de 3 MA se produit et que la taille de la bougie dépasse les pips saisis par l'utilisateur, l'indicateur est mis en évidence par une couleur vive et le nombre de barres il y a (pour connaître le dernier moment de l'action de croisement) est imprimé sur la bougie. De la même manière, la bougie est mise en évidence et le nombre de barres il y a est imprimé lorsque le rebond se produit et que le prix traverse la MA du milieu.
J'attendais avec impatience votre carte thermique MTF multidevises sur les croisements de MA. J'espère que vous trouverez le temps de le faire.
ligne 178 erreur : 'Close' - une variable constante ne peut pas être passée comme référence
ligne 178 erreur : 'Close' - une variable constante ne peut pas être passée comme référence
signal d'achat :
smfisher transform 3 doit être bleu clair,
flèche renko maker ; VERT et petite boîte verte,
Pcci doit être au-dessus de la ligne centrale
Solar wind of joy no-repaint : vert
fisher non-repaint : vert
Chers amis,
Pouvez-vous ajouter la valeur"taille de la police" attachée à indi s'il vous plaît ?
Merci...
Mladen, j'ai des questions. Y a-t-il une possibilité de connecter lavaleur d' entrée par ce code :
main.cpp (adaptateur)
b) combien les dernières valeurs de prix et d'indicateurs, et comment il devrait être connecté à l'arrimage avec les fichiers de la bibliothèque utilisée de Neurosolyutions.
с) construction du modèle prédit de bougies. mais plutôt il est nécessaire de modifier le conseiller à l'indicateur...
p.s. si vous pouvez fixer le code pour afficher le code - vous pouvez utiliser n'importe lequel des noms des indicateurs (échantillon 1, 2 ...). il vise à construire - ligne, le Сlosing price (colonne, que j'ai choisi pour les prédictions)...
Mladen, j'ai des questions. Y a-t-il une possibilité de connecter lavaleur d' entrée par ce code :
main.cpp (adaptateur)
b) combien les dernières valeurs de prix et d'indicateurs, et comment il devrait être connecté à l'arrimage avec les fichiers de la bibliothèque utilisée de Neurosolyutions.
с) construction du modèle prédit de bougies. mais plutôt il est nécessaire de modifier le conseiller à l'indicateur...
p.s. si vous pouvez fixer le code pour afficher le code - vous pouvez utiliser n'importe lequel des noms des indicateurs (échantillon 1, 2 ...). il vise à construire - ligne, le Сlosing price (colonne, que j'ai choisi pour les prédictions)...
Désolé, je ne suis pas familier avec NeuroSolutions donc je ne peux pas aider dans ce domaine
Bonjour Mladen, est-il possible de retarder le signal d'un indicateur à un moment défini personnellement. Par exemple, j'ai un indicateur de flèche qui montre parfois des flèches du début d'une bougie sur un graphique de 30 minutes sur la bougie actuelle, mais je veux ignorer de tels signaux parce qu'ils ont la plupart du temps tendance à se reproduire/disparaître. Je préférerais qu'il y ait un indicateur/script ou qu'il soit possible de régler l'indicateur lui-même pour qu'il commence à montrer des signaux à un moment précis, par exemple un graphique de 10 minutes/30 minutes, 20 minutes/1 heure, etc.
Merci d'avance.
Bonjour Mladen, est-il possible de retarder le signal d'un indicateur à un moment défini personnellement. Par exemple, j'ai un indicateur de flèche qui montre parfois des flèches du début d'une bougie sur un graphique de 30 minutes sur la bougie actuelle, mais je veux ignorer de tels signaux parce qu'ils ont la plupart du temps tendance à se reproduire/disparaître. Je préférerais qu'il y ait un indicateur/script ou qu'il soit possible de régler l'indicateur lui-même pour qu'il commence à montrer des signaux à un moment précis, par exemple un graphique de 10 minutes/30 minutes, 20 minutes/1 heure, etc.
Merci d'avance.
Cela ne peut pas être fait pour un signal qui est sur une barre fermée.
Même sur une barre ouverte, il est douteux de savoir dans quel délai cela peut être fait (dans certains cas, cela ne fonctionnerait pas).
Mladen, j'ai des questions. Y a-t-il une possibilité de connecter lavaleur d' entrée par ce code :
main.cpp (adaptateur)
b) combien les dernières valeurs de prix et d'indicateurs, et comment il devrait être connecté à l'arrimage avec les fichiers de la bibliothèque utilisée de Neurosolyutions.
с) la construction du modèle prédit de bougies. mais plutôt il est nécessaire de modifier le conseiller à l'indicateur ...
p.s. si vous pouvez fixer le code pour afficher le code - vous pouvez utiliser n'importe lequel des noms des indicateurs (échantillon 1, 2 ...). il vise à construire - ligne, le Сlosing price (colonne, que j'ai choisi pour les prédictions)...
C'est la partie qui gère les entrées
Cher mladen,
Pouvez-vous s'il vous plaît m'aider à incorporer une stratégie pouraider àsurfer sur le momentum des retracements/pullbacks/reversals/bounce back dans des cadres à court terme en modifiant votre 3 MA cross avec aert mtf 3.03 ?
Lorsque le croisement de 3 MA se produit et que la taille de la bougie dépasse les pips saisis par l'utilisateur, l'indicateur est mis en évidence par une couleur vive et le nombre de barres il y a (pour connaître le dernier moment de l'action de croisement) est imprimé sur la bougie. De la même manière, la bougie est mise en évidence et le nombre de barres il y a est imprimé lorsque le rebond se produit et que le prix traverse la MA du milieu.
J'attendais avec impatience votre carte thermique MTF multidevises sur les croisements de MA. J'espère que vous trouverez le temps de le faire.
Je vous remercie.