Hilfe bei der Codierung - Seite 664

 

Zeile 178 Fehler: 'Close' - konstante Variable kann nicht als Referenz übergeben werden


Dateien:
 
asaens15:

Zeile 178 Fehler: 'Close' - konstante Variable kann nicht als Referenz übergeben werden


Überprüfen Sie diesen Thread: https: //www.mql5.com/en/forum/175337 für korrekte Versionen (und original mql, nicht dekompilierte Versionen) dieses Indikators
 
Hallo alle, bitte kann jeder Top-Coder diese Strategie zu codieren. Finden Sie einen Screenshot des system.this System ist ausschließlich für binäre Optionen entwickelt, kann aber auch in Forex verwendet werden. Jetzt über das System: Ich nehme nur Trades von Signalen aus dem ersten und zweiten sub-Fenster Indikatoren generiert. die grünen und roten Linien zeigen Ihnen eine typische kaufen oder verkaufen Signal, wenn alle Bedingungen erfüllt sind. für ein
Kaufsignal:
smfisher transform 3 muss hellblau sein,
renko maker arrow; GRÜN und little box grün,
Pcci muss über der mittleren Linie liegen
Solar Wind of Joy ohne Umfärbung: grün
Fischer nicht-umstreichen grün
Dateien:
my system 2.PNG  33 kb
 

Liebe Freunde,

Könnt ihr bitte den Wert für die"Schriftgröße" im Anhang hinzufügen?

Dankeschön...

 

Mladen, ich habe Fragen. Gibt es eine Möglichkeit, denEingangswert mit diesem Code zu verbinden:

main.cpp (Adapter)

#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 balances
    if (nn.LoadWeights(weightsPath) != 0) return (2);
        
    // Pass input data and calculate the output
    if (nn.GetResponse(1, inputs, outputs) != 0) return (3);

    return 0;
}
AND CODE the advisor:
1. Hier ist die wichtigste Frage. Ist es möglich, das Array von verwendet zu ersetzen (aber in einer Datei, die den Wert der Kerzen exportiert hat irgendwie verschiebt die Geschichte von fünf Bars in der Vergangenheit eine Zeile nach unten). Ich denke, dll Adapter selbst ist universell.
Und dann möchte ich den Code-Berater zu ändern - sowohl hier Boot-Array auf den aktuellen Preis:
a) ersetzen die Boot-Array von Preis-Indikatoren, um lineare Sequenz von mehreren Indikatoren und OHLC (weiß nicht, wie viele 30 -300, Bars?).

b) wie viel die letzten Preiswerte und Indikatoren, und wie es sollte mit den verwendeten Bibliotheksdateien von Neurosolyutions verbunden werden andocken

с) Konstruktion des vorhergesagten Musters der Kerzen. aber eher ist es notwendig, den Berater zum Indikator zu ändern...

p.s. wenn Sie den Kode für die Darstellung des Kodes fixieren können - Sie können jeden der Namen der Indikatoren (das Beispiel 1, 2 ...) verwenden. Es soll - die Linie, den Сlosing price (die Spalte, die ich für die Vorhersagen gewählt habe) bauen...


2. Ein anderer Ausweg (der beste Weg): Wenn es rational ist - bitte ich Sie, die Probe (wenn Sie sie besitzen) neuronalen Netzindikator (NS) zu teilen, mit mindestens zwei Indikatoren (für mehrere) von MT4 arbeitend
input double    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 NeuroSolutions
   string weightsPath; // Path to a file of the neuronet balances
public:
   double in[20]; // Neuronet inputs - OHLC of 5 bars
   double 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 neuronet
   MqlRates rates[], rate;
   CopyRates(Symbol(), Period(), 0, 6, rates);
   ArraySetAsSeries(rates, true);
      
   // Fill the array of input data of the neuronet
   double zlevel=0;   
   for (int bar=0; bar<=5; bar++)
     {
      rate = rates[bar];
      // 0 bar is not taken for input
      if (bar==0) zlevel=rate.open; // level of price calculation
      // 1-5 bars are inputed
      else
        {
         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)
     {
      case 1: Print("Error of creating neuronet from DLL \"", dllPath, "\""); return (false);
      case 2: Print("Error of loading balances to neuronet from the file \"", weightsPath, "\""); return (false);
      case 3: Print("Error of calculation of neuronet");  return (false);
     }
     
   // Output of the neuronet has appeared in the array out, you shouldn't do anything with it

   return (true);
  }
//+------------------------------------------------------------------+

CNeuroSolutionsNeuralNet NN;
double Prognoze;

//+------------------------------------------------------------------+
#include <Trade\Trade.mqh>
//+------------------------------------------------------------------+
void OnTick() 
  {
   // Get the price prediction from the neuronet
   if (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 prediction

   if(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 prediction

   if((Prognoze!=0) && (!PositionSelect(_Symbol))) 
     {
      CTrade trade;
      if(Prognoze > 0) trade.Buy (Lots);
      if(Prognoze < 0) trade.Sell(Lots);
     }
  }
//+------------------------------------------------------------------+
 
kostumer27:

Mladen, ich habe Fragen. Gibt es eine Möglichkeit, denEingangswert mit diesem Code zu verbinden:

main.cpp (Adapter)

1. Hier ist die wichtigste Frage. Ist es möglich, das Array von verwendet zu ersetzen (aber in einer Datei, die den Wert der Kerzen exportiert hat irgendwie verschiebt die Geschichte von fünf Bars in der Vergangenheit eine Zeile nach unten). Ich denke, dll Adapter selbst ist universell.
Und dann möchte ich den Code-Berater zu ändern - sowohl hier Boot-Array auf den aktuellen Preis:
a) ersetzen die Boot-Array von Preis-Indikatoren, um lineare Sequenz von mehreren Indikatoren und OHLC (weiß nicht, wie viele 30 -300, Bars?).

b) wie viel die letzten Preiswerte und Indikatoren, und wie es sollte mit den verwendeten Bibliotheksdateien von Neurosolyutions verbunden werden andocken

с) Konstruktion des vorhergesagten Musters der Kerzen. aber eher ist es notwendig, den Berater zum Indikator zu ändern...

p.s. wenn Sie den Kode für die Darstellung des Kodes fixieren können - Sie können beliebige Namen der Indikatoren (das Beispiel 1, 2 ...) verwenden. Es soll - die Linie, den Сlosing price (die Spalte, die ich für die Vorhersagen gewählt habe) bauen...


2. Ein anderer Ausweg (der beste Weg): Wenn es vernünftig ist - bitte ich Sie, das Beispiel (wenn Sie sie besitzen) des Indikators des neuronalen Netzes zu teilen, mit mindestens zwei Indikatoren (für mehrere) von MT4 arbeitend

Sorry, ich bin nicht vertraut mit NeuroSolutions, so kann ich nicht in dieser Angelegenheit helfen

 

Hallo Mladen, ist es möglich, das Signal eines Indikators auf eine persönlich definierte Zeit zu verzögern. Ich habe z.B. einen Pfeil-Indikator, der manchmal Pfeile vom Beginn einer Kerze auf einem 30-Minuten-Chart auf der aktuellen Kerze anzeigt, aber ich möchte solche Signale ignorieren, weil sie meistens dazu neigen, sich zu wiederholen/verschwinden. Ich würde es vorziehen, wenn es einen Indikator/Skript gibt oder wenn es möglich ist, den Indikator selbst so einzustellen, dass er Signale zu einer bestimmten Zeit anzeigt. z.B. 10 Minuten/30 Minuten Chart, 20 Minuten/1 Stunde usw.

Vielen Dank im Voraus.

 
emmany4:

Hallo Mladen, ist es möglich, das Signal eines Indikators auf eine persönlich definierte Zeit zu verzögern. Ich habe z.B. einen Pfeil-Indikator, der manchmal Pfeile vom Beginn einer Kerze auf einem 30-Minuten-Chart auf der aktuellen Kerze anzeigt, aber ich möchte solche Signale ignorieren, weil sie meistens dazu neigen, sich zu wiederholen/verschwinden. Ich würde es vorziehen, wenn es einen Indikator/Skript gibt oder wenn es möglich ist, den Indikator selbst so einzustellen, dass er Signale zu einer bestimmten Zeit anzeigt. z.B. 10 Minuten/30 Minuten Chart, 20 Minuten/1 Stunde usw.

Vielen Dank im Voraus.

Es kann nicht für jedes Signal getan werden, das auf einem geschlossenen Bar ist.

Selbst bei einem geöffneten Balken ist es zweifelhaft, welche Zeitverzögerung möglich ist (in einigen Fällen würde es nicht funktionieren).

 
kostumer27:

Mladen, ich habe Fragen. Gibt es eine Möglichkeit, denEingangswert mit diesem Code zu verbinden:

main.cpp (Adapter)

1. Hier ist die wichtigste Frage. Ist es möglich, das Array von verwendet zu ersetzen (aber in einer Datei, die den Wert der Kerzen exportiert hat irgendwie verschiebt die Geschichte von fünf Bars in der Vergangenheit eine Zeile nach unten). Ich denke, dll Adapter selbst ist universell.
Und dann möchte ich den Code-Berater zu ändern - sowohl hier Boot-Array auf den aktuellen Preis:
a) ersetzen die Boot-Array von Preis-Indikatoren, um lineare Sequenz von mehreren Indikatoren und OHLC (weiß nicht, wie viele 30 -300, Bars?).

b) wie viel die letzten Preiswerte und Indikatoren, und wie es sollte verbunden werden, um mit den verwendeten Bibliotheksdateien von Neurosolyutions andocken

с) Konstruktion des vorhergesagten Musters der Kerzen. aber eher ist es notwendig, den Berater zum Indikator zu ändern...

p.s. wenn Sie den Kode für die Darstellung des Kodes fixieren können - Sie können jeden der Namen der Indikatoren (das Beispiel 1, 2 ...) verwenden. Es soll - die Linie, den Сlosing price (die Spalte, die ich für die Vorhersagen gewählt habe) bauen...


2. Ein anderer Ausweg (der beste Weg): Wenn es rational ist - bitte ich Sie, die Probe (wenn Sie sie besitzen) neuronalen Netzindikator (NS) zu teilen, mit mindestens zwei Indikatoren (für mehrere) von MT4 arbeitend
Wenn Sie eine legale Neurosolutions haben, sollte es funktionieren
 
mladen:

Dies ist der Teil, der die Einträge verarbeitet


Liebe mladen,

Kannst du mir bitte helfen, eine Strategie zu entwickeln, diemir hilft,das Momentum von Retracement/Pullbacks/Reversals/Bounce Back in kurzen Zeitrahmen zu nutzen, indem du deinen 3 MA Cross mit aert mtf 3.03 modifizierst?

Wenn 3 MA Cross-Over passiert und die Kerzengröße die vom Benutzer eingegebenen Pips übersteigt, wird der Indikator durch eine helle Farbe hervorgehoben und die Bars ago-Nummer (um den letzten Zeitpunkt der Cross-Over-Aktion zu kennen) wird auf die Kerze gedruckt und auf die gleiche Weise wird die Kerze hervorgehoben und die Bars ago-Nummer wird gedruckt, wenn der Bounce-Back passiert und der Preis den mittleren MA kreuzt.

Ich warte schon sehnsüchtig auf Ihre MTF-Heatmap für mehrere Währungen zu den MA-Überkreuzungen. Hoffentlich finden Sie Zeit dafür.

Ich danke Ihnen.