[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 336

 
snowman647 писал(а) >>
vorschlagen, wenn jemand einen Berater gesehen hat, der nur nach Rendering handelt - jede Implementierung... (es soll nur langsam auf Kosten der Ausbreitung abfließen)

Probieren Sie diese Option aus. http://vinin.ucoz.ru/forum/10-38-1

Letzter Beitrag

 

Bürger, die MT4 mit Matlab über DDE verbunden haben, können Sie mir sagen, warum die Verbindung nicht initialisiert wird?

Ich schreibe Kanal = ddeinit('MT4','BID');

in Antwort - Kanal = 0

Der Metatrader läuft, wenn überhaupt.

 

Guten Tag.

Können Sie mir das bitte sagen?

Was sollte ich im MA-Indikator ändern, damit die Linie auf der anderen Seite des Kurses gezeichnet wird? Wenn der Kurs beispielsweise sinkt, wird die Indikatorlinie auf der rechten Seite gezeichnet, wenn er steigt, wird sie auf der linken Seite gezeichnet.

Wie kann man das Gegenteil erreichen?

 
smogsam писал(а) >>

Guten Tag.

Können Sie mir das bitte sagen?

Was sollte ich im MA-Indikator ändern, damit die Linie auf der anderen Seite des Kurses gezeichnet wird? Wenn der Kurs beispielsweise sinkt, wird die Indikatorlinie auf der rechten Seite gezeichnet, wenn er steigt, wird sie auf der linken Seite gezeichnet.

Wie kann man es umgekehrt machen?

Wahrscheinlich ist es notwendig, den Indikator für einen bestimmten Zeitraum in die Vergangenheit zu verschieben, aber wie stark er verschoben werden sollte, hängt von der Verzögerungszeit des Indikators ab. Der SMA hat eine halbe Periode.

Wenn Sie also den SMA für eine Periode rückwärts bewegen, können Sie in der Geschichte sehen, was Sie wollen.

 
Chemist >> :

Bürger, die MT4 mit Matlab über DDE verbunden haben, können Sie mir sagen, warum die Verbindung nicht initialisiert wird?

Ich schreibe Kanal = ddeinit('MT4','BID');

in Antwort - Kanal = 0

metatrader wird ausgeführt.

Haben Sie Service-Settings-Server-Enable DEE Server aktiviert?

Das sollten Sie.

 
Urain >> :

Haben Sie Service-Settings-Server-Enable DEE Server aktiviert?

Oder aber es sollte so sein.


Das war's, das Problem ist gelöst. Kanal nahm den richtigen Wert. jetzt versuche ich, die Daten zu bekommen

rc = ddeadv(channel, 'EURUSD','disp(x)','x',[1 1]); - Versuch, den Wert des eingehenden Ticks auf der Konsole auszugeben,

aber es funktioniert nicht, obwohl rc=1. Was ist los, sagen Sie mir?

 


Hallo. Ich kämpfe mit dem Code eines benutzerdefinierten Indikators, basierend auf der Theorie von DeMark. Das Wesen des Indikators - der Weg durch den Preis (Close[i]-Open[i])/(High[i]-Low[i]) pro Zeiteinheit, zum Beispiel einen Tag, wird mit dem Volumen des gleichen Zeitraums multipliziert. Steigt der Preis, wird der Wert dieses Wertes, multipliziert mit dem Volumen, zum vorherigen Wert addiert. Sinkt der Kurs, wird der Wert des betreffenden Tages vom Wert des Vortages abgezogen. Mit anderen Worten, positive Werte werden zum Wert des Vortages addiert und negative Werte werden vom Wert des Vortages subtrahiert. Das Verhältnis von positiven und negativen Werten einer Periode ist der prozentuale Wert des Käufer-/Verkäuferdrucks, mit anderen Worten, die Akkumulation/Verteilung eines Wertpapiers.

Ich gebe nur den Code der speziellen Startfunktion an, da es kein Problem mit der Initialisierung von Variablen gibt. Wenn ich den Code ausführe, geht die Indikatorkurve bei null Iterationen bis zur Decke/Hälfte des Indikatorfensters.

Was mache ich falsch? Wie sollte es gemacht werden? Vielen Dank für die Hilfe.


int start()
{
int i,j,nCountedBars;
double V,X,Y,Z;

if(Bars<=Fi) return(0);

nCountedBars=IndicatorCounted();
//----
i=Bars-Fi-1;
if(nCountedBars>Fi)
i=Bars-nCountedBars-1;
while(i>=0)
{
V=(Close[i]-Open[i])/(High[i]-Low[i]);
if(V>0)
X+=V*Volumen[i];
else
Y+=V*Volumen[i];



Alert("V=",V," X=",X," Y=",Y," i=",i);


ExtDMFiBuffer[i]=100-100/(1+MathAbs(X/Y));


i--;
}
return(0);
Dateien:
demarkrf.mq4  2 kb
 
Laven писал(а) >>

Hallo. Ich kämpfe mit dem Code eines benutzerdefinierten Indikators, basierend auf der Theorie von DeMark. Das Wesen des Indikators - der Weg durch den Preis (Close[i]-Open[i])/(High[i]-Low[i]) pro Zeiteinheit, zum Beispiel einen Tag, wird mit dem Volumen des gleichen Zeitraums multipliziert. Steigt der Preis, wird der Wert dieses Wertes, multipliziert mit dem Volumen, zum vorherigen Wert addiert. Sinkt der Kurs, wird der Wert des betreffenden Tages vom Wert des Vortages abgezogen. Mit anderen Worten, positive Werte werden zum Wert des Vortages addiert und negative Werte werden vom Wert des Vortages subtrahiert. Das Verhältnis der positiven und negativen Werte einer Periode ist der prozentuale Wert des Käufer-/Verkäuferdrucks, mit anderen Worten, die Akkumulation/Ausschüttung dieses Finanzinstruments.

Die Division durch Null fällt aus.

Wenn wir vor einer Teilung das Steuerelement auf Null setzen, beginnt es zu zeichnen.

Dazu müsste allerdings die Logik des Indikators geändert werden. Bei jedem neuen Tick nehmen die Variablen X und Y einen Wert von Null an. Der Verlauf funktioniert korrekt.

Dateien:
 
Laven писал(а) >>

Ich danke Ihnen. Ich werde Ihrem Leitartikel einen Sinn geben. Aber

Dennoch geht die Kurve des Diagramms bis zum "Boden". Versuchen Sie Ihr eigenes.

Ich habe den vorherigen Beitrag korrigiert. Ich habe auch die Datei geändert.

Sie können den Indikator ändern. Allerdings werden zusätzliche Puffer für Zwischenberechnungen benötigt.

 
Vinin >> :

Die Division durch Null funktioniert.

Wenn Sie vor einer Teilung ein Null-Steuerelement hinzufügen, beginnt die Zeichnung.

Allerdings müsste die Logik des Indikators überarbeitet werden. Bei jedem neuen Tick nehmen die Variablen X und Y den Wert Null an. Es funktioniert korrekt mit dem Verlauf

Zur Geschichte? Es stellt sich also heraus, dass der heutige Tag aus den Berechnungen herausgenommen werden sollte. Fangen wir mit gestern an und ich...?

Grund der Beschwerde: