Fehler, Irrtümer, Fragen - Seite 774

 
Karlson:

Wusste nicht, in welchen Thread ich schreiben sollte ))))

Ursprüngliches Depot 10000, d.h. vor der gestrigen Aktualisierung.

Wie ist es gelaufen? Können Sie den Code und die Beschreibung der Testbedingungen in der Servicedesk angeben?
 
Urain:

Löst OnTradeTransaction das Trade-Ereignis aus, oder hat es ein eigenes Ereignis?

Wenn beide Funktionen durch dasselbe Ereignis ausgelöst werden, wie lautet dann die Reihenfolge? Was wird zuerst ausgelöst: OnTrade() oder OnTradeTransaction()?

So können Sie nicht weitermachen.

Erstellen Sie einen Ausdruck und sehen Sie nach - es dauert nur eine Minute.

 

Es ist alles da. Zusätzlich zu meinem Experten...#419548

So habe ich angefangen, Silber zu testen...

Es gibt einen unverständlichen Speicherverbrauch von drei Ein-Barrel-Fässern...

 
Renat:

Sie ergänzen sich gegenseitig, wobei OnTradeTransaction die OnTrade-Funktionalität vollständig abdeckt.

OnTradeTransaction ermöglicht Ihnen den Zugriff auf den rohen Transaktionsfluss und erlaubt Ihnen, den Prozess der Handelsausführung im Detail zu überwachen.

Die Funktionen arbeiten unabhängig voneinander, und der Transaktionsablauf bei OnTradeTransaction ist viel umfangreicher und detaillierter. OnTradeTransaction hat eine eigene Warteschlange, aus der Befehle ausgegeben werden.

ps: stellen Sie einfach eine Unterschreitung dieser Funktionen ein und überzeugen Sie sich selbst

D.h. OnTrade ist jetzt eine gekürzte Version von OnTradeTransaction ?

oder ist es möglich, etwas in OnTrade zu erhalten, das nicht in OnTradeTransaction enthalten ist?

 
Urain:

OnTrade ist jetzt also eine abgespeckte Version von OnTradeTransaction?

Oder ist es möglich, etwas von OnTrade zu bekommen, was nicht von OnTradeTransaction sein kann?

Bei OnTrade bleibt alles beim Alten - es wird lediglich eine Meldung angezeigt, dass in der Datenbank für Handelsgeschäfte einige Änderungen eingetreten sind, ohne weitere Einzelheiten. Der Gewerbetreibende muss selbst in der Datenbank nachsehen, was sich tatsächlich geändert hat.

OnTradeTransaction liefert Schritt für Schritt absolut genaue und detaillierte Einzeltransaktionen. Hier wird jede Transaktion auf einem Tablett serviert, ohne dass man in der Datenbank nach Änderungen suchen muss.

Sie haben genau das getan, worum sie gebeten haben - sie haben die vollständige und detaillierte Kontrolle über alle Transaktionen im Zusammenhang mit den Handelsgeschäften gegeben. Und es ist einfach, alle serverseitig vorgenommenen Änderungen zu erfassen: Auslösung von Stops, Aufträgen, Rollover usw.

 
Renat:

Bei OnTrade ist alles beim Alten - es wird lediglich eine Meldung angezeigt, die besagt, dass "einige Änderungen an der Basis der Handelsoperationen vorgenommen wurden", ohne weitere Einzelheiten. Der Gewerbetreibende muss selbst in die Datenbank gehen und nachsehen, was sich wirklich geändert hat.

OnTradeTransaction liefert absolut präzise und detaillierte Einzeltransaktionen Schritt für Schritt. Jede Transaktion wird auf einem Tablett präsentiert, es ist nicht nötig, in der Datenbank nach Änderungen zu suchen.

Sie taten genau das, was sie verlangten - sie übernahmen die vollständige und detaillierte Überwachung aller Transaktionen im Zusammenhang mit den Handelsgeschäften. Und alle serverseitigen Änderungen sind leicht zu erfassen: Auslösung von Stops, Aufträgen, Rollover usw.

Danke, das ist sehr clever. Jetzt teste ich es, es ist sehr praktisch und funktionell.
 

Können Sie mir bitte sagen, ob die CopyBuffer-Funktion in einer Initialisierungsfunktion verwendet werden kann?

input int      n_analyzed_bars=50;

input int      shift_offset=0; 

input string   symb1="GBPUSD";

input ENUM_MA_METHOD   ma_method=MODE_SMA;

input ENUM_APPLIED_PRICE   applied_price=PRICE_CLOSE;  

//--- indicator buffers 

double                   MainMaBuffer[];

double                   MaBuffer1[]; 

//--- MA handles

int                      MainMaHandle;

int                      MaHandle1; 

int OnInit()

  { 

SetIndexBuffer(0,instsymBuffer,INDICATOR_DATA);

SetIndexBuffer(13,MainMaBuffer,INDICATOR_CALCULATIONS);

ArraySetAsSeries(MainMaBuffer,true);

ArraySetAsSeries(MaBuffer1,true);

 

MaHandle1 = iMA(symb1,0,1,0,ma_method,applied_price);

MainMaHandle = iMA(_Symbol,0,1,0,ma_method,applied_price); 

if(CopyBuffer(MaHandle1,0,0,n_analyzed_bars+shift_offset+2,MaBuffer1)<=0) 

    {

      Print("Getting MA is failed! Error",GetLastError());      

      return(0);

    }

Fehler 4806 und 4007

ERR_INDICATOR_DATA_NOT_FOUND

4806

Angeforderte Daten nicht gefunden

ERR_ARRAY_RESIZE_ERROR

4007

Unzureichender Speicher, um ein Array zu verschieben oder zu versuchen, die Größe eines statischen Arrays zu ändern

 
Neofit:

Können Sie mir bitte sagen, ob die CopyBuffer-Funktion in einer Initialisierungsfunktion verwendet werden kann?

Fehler 4806

ERR_INDICATOR_DATA_NOT_FOUND

4806

Die angeforderten Daten wurden nicht gefunden

Wenn Sie einen Indikator in der Inite erstellen, ist es besser, das Auslesen seiner Daten auf OnTick oder OnCalculate zu verschieben, da Sie nach der Erstellung des Indikators Zeit benötigen, um ihn zu berechnen.

Das heißt, Sie haben den Indikator auf der Startseite erstellt und verlassen. Am Arbeitspunkt OnTick/OnCalculate prüfen Sie die Datenverfügbarkeit durch den CopyBuffer und lassen auch die Berechnung solange laufen, bis die Daten erscheinen.

Auf diese Weise können Sie komplexe untergeordnete/abhängige Indikatoren initialisieren und mit ihnen arbeiten.

 
Renat:

Wenn Sie einen Indikator in der Inite erstellen, ist es besser, das Auslesen seiner Daten auf OnTick oder OnCalculate zu verschieben, da Sie nach der Erstellung des Indikators Zeit benötigen, um ihn zu berechnen.

Das heißt, Sie haben den Indikator auf der Startseite erstellt und verlassen. Am Arbeitspunkt OnTick/OnCalculate prüfen Sie die Datenverfügbarkeit durch den CopyBuffer und lassen auch die Berechnung solange laufen, bis die Daten erscheinen.

Auf diese Weise müssen Sie komplexe untergeordnete/abhängige Indikatoren initialisieren und mit ihnen arbeiten.

Wir danken Ihnen für Ihr Feedback.

Ich schreibe einen Indikator...leider geht das Konzept des Indikators davon aus, dass zu dem Zeitpunkt, an dem wir zu OnCalculate kommen, das optimale Paar ausgewählt sein wird, ich vermute, das klingt unklar.

Im Allgemeinen sollten wir in der Funktion OnCalculate bereits die Ergebnisse von Berechnungen und Analysen verwenden, die in On Init durchgeführt wurden.

Wir können diese Berechnungen nicht auf OnCalculate übertragen, weil wir nicht die Zeit haben, alle Berechnungen zwischen zwei aufeinanderfolgenden Ticks durchzuführen...

 
antt:
Ja. Leider gibt es einen Fehler beim Rendern dieses Objekts im Build. Das Problem wird in der nächsten Version behoben. Wir entschuldigen uns dafür.

Ich verstehe, danke. Was ist mit...

Stumm:

...

Werden die anderen Objekte(Gann-Fächer, Bögen) fertiggestellt sein?

Zum Thema "Verirren" beim Wechseln des Fensters?