[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 647
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
richtig.
Ich habe den untenstehenden Code gezeichnet. Kann mir jemand sagen, was das Problem ist - das fettgedruckte Fragment?
Das Problem ist, dass der Indikator die Historie sofort rückwärts zeichnet und sie nach einer Änderung der Parameter nicht zurücksetzt.
#property indicator_separate_window
#Eigenschaft indicator_buffers 1
#property indicator_color1 LimeGreen
doppelte AUD;
extern int PerAvr=5,Delta=1;
double Idx[];
//+------------------------------------------------------------------+
//| Benutzerdefinierte Initialisierungsfunktion für Indikatoren |
//+------------------------------------------------------------------+
int init()
{
//---- Indikatoren
SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,2);
SetIndexPuffer(0,Idx);
//----
zurück(0);
}
//+------------------------------------------------------------------+
//| Funktion zur Deinitialisierung des Custor-Indikators |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
zurück(0);
}
//+------------------------------------------------------------------+
//| Benutzerdefinierte Indikator-Iterationsfunktion |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(gezählte_Balken>0) gezählte_Balken--;
int limit=Bars-counted_bars;
for(int i=limit; i>=0; i--)
{
AUD=(iMA("AUDUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("AUDUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+De lta)*100/iMA("AUDUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+De lta);
//if (Curency =="AUDUSD")
Idx[i] = AUD;
}
//----
//----
zurück(0);
}
//+------------------------------------------------------------------+
Guten Tag, liebe Forumsmitglieder, ich habe einen interessanten Code für die Erstellung einer Trendlinie gefunden. Ich habe beschlossen, ein wenig damit zu spielen.
Aus irgendeinem Grund wurde ich an eine Anekdote erinnert: In der Familie eines Programmierers kommt ein Sohn zu seinem Vater und fragt, warum die Sonne im Osten aufgeht und im Westen untergeht.
Papa, ohne den Blick von seinem Computer zu nehmen: Geht er wirklich im Osten auf? -Ja. -Und es geht im Westen unter? - Ja. Also, was, jeden Tag? - Ja. Nun, fassen Sie nichts an, wenn es funktioniert.
Aus irgendeinem Grund wurde ich an eine Anekdote erinnert: In der Familie eines Programmierers kommt ein Sohn zu seinem Vater und fragt, warum die Sonne im Osten aufgeht und im Westen untergeht.
Papa, ohne den Blick von seinem Computer zu nehmen: Geht er wirklich im Osten auf? -Ja. -Und es geht im Westen unter? - Ja. Also, was, jeden Tag? - Ja. Wenn es funktioniert, müssen Sie nichts anfassen.
Hallo Forumsnutzer, ich habe einen interessanten Code zum Zeichnen der Trendlinie gefunden.
Wissen Sie, was komisch ist? Sie haben den Kodex nach Ihren Prinzipien geändert und wollen, dass eine Brigade von Gelehrten Fehler findet.
und Sie versuchen einfach, die Informationen auszugeben, die Sie im Kommentar erhalten möchten? es ist möglich, dass alles funktioniert, aber Sie erhalten die Daten, die nicht zum aktuellen Preis, sondern irgendwo am unteren Rand des Diagramms angezeigt werden - ich denke, es ist die separatetwinds
SZS viel Glück
Wissen Sie, was lustig ist? Sie haben den Code nach Ihren Prinzipien geändert und wollen, dass eine Brigade von Gelehrten Fehler findet.
und Sie versuchen einfach, die Informationen auszugeben, die Sie im Kommentar erhalten möchten? es ist möglich, dass alles funktioniert, aber Sie erhalten die Daten, die nicht zum aktuellen Preis, sondern irgendwo am unteren Rand des Diagramms angezeigt werden - ich denke, es ist die separatetwinds
SZS viel Glück
Ich weiß von den Trennungen - ich weiß, sie werden in einem separaten Fenster gezeichnet, es geht nicht um sie. Ich kann nicht sehen, was mit diesem Code passieren wird - anscheinend wird diese Berechnungsmethode nicht für Zinsen funktionieren ((.
Aus irgendeinem Grund erinnere ich mich sofort an einen Witz: Der Sohn eines Programmierers kommt zu seinem Vater und fragt, warum die Sonne im Osten aufgeht und im Westen untergeht?
Papa, ohne den Blick von seinem Computer zu nehmen: Geht er wirklich im Osten auf? -Ja. -Und es geht im Westen unter? - Ja. Also, was, jeden Tag? - Ja. Wenn es funktioniert, müssen Sie nichts anfassen.
Ich danke Ihnen. Ich schätze, der einzige Unterschied ist, dass der EA jedes Mal gestartet wird, wenn ein neuer Tick eintrifft, während das Skript in einer Endlosschleife gestartet werden muss, damit es weiterläuft?
Nicht unbedingt. Das hängt ganz vom Zweck des Drehbuchs ab. Wenn das Skript für einen einmaligen Durchlauf gedacht ist (was in den allermeisten Fällen der Fall ist), besteht keine Notwendigkeit, Endlosschleifen zu erfinden. Ein Beispiel für ein solches einmaliges Skript ist die Berechnung des Geldbetrags, der auf den Markt gebracht werden muss, wenn eine Position mit einem voreingestellten Lot eröffnet wird. Da der Mindestpreis für die verschiedenen Instrumente unterschiedlich ist, ist es einfacher, das gewünschte Instrument zu öffnen, das Skript darauf anzuwenden, das gewünschte Lot in das Parameterfenster einzugeben und zu sehen, wie viel Geld blockiert wird, wenn der Handel eröffnet wird.
Dies ist nur ein Beispiel. Der Zweck der Skripte kann unterschiedlich sein.
Ich bin mir der Trennung bewusst - ich weiß, es ist in einem separaten Fenster, es geht nicht darum. Ich sehe nicht, wie dieser Code funktionieren wird - anscheinend wird diese Methode der Prozentberechnung nicht funktionieren((.
Aus irgendeinem Grund fällt mir sofort eine Anekdote ein: Ein Sohn in einer Familie von Programmierern kommt zu seinem Vater und fragt, warum die Sonne im Osten aufgeht und im Westen untergeht?
Papa, ohne den Blick von seinem Computer zu nehmen: Geht er wirklich im Osten auf? -Ja. -Und es geht im Westen unter? - Ja. Also, was, jeden Tag? - Ja. Wenn es funktioniert, müssen Sie nichts anfassen.
Es ist ein ziemlich einfacher Indikator. Ich verstehe nicht, wie Prozentwerte besser sein sollen als Pips, aber egal.
Sie haben allerdings einige Fehler gemacht :)
1.
Um den Prozentsatz korrekt zu berechnen, müssen Sie Klammern hinzufügen.
2.
Das Problem besteht darin, dass der Indikator den Verlauf sofort rückwärts zeichnet und ihn nach einer Änderung der Parameter nicht zurücksetzt.
Das Interessanteste daran ist, dass es das sportliche Interesse geweckt hat und eine halbe Stunde lang auf Ihrem Anzeiger saß.
Warum wurde die Geschichte nicht berechnet?
Die Antwort ist, dass Sie eine Divisionsoperation hinzugefügt haben.
Die Tatsache, dass die Funktion iMA("AUDUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE ,i+Delta) gleich zu Beginn der Geschichte 0 zurückgibt, wurde nicht berücksichtigt. Und Sie wurden mit Fehler 4013 (ERR_ZERO_DIVIDE) "rausgeschmissen", als Sie versuchten, durch 0 zu dividieren, prüfen Sie das Protokoll.
Sie können eine weitere Prüfung in die FOR-Schleife einfügen.
Und alles wird gut werden. Nachstehend ist meine Variante aufgeführt.
#Eigenschaft indicator_color1 Weiß
Ist es möglich, diesen Parameter programmatisch im Modul start() zu ändern?
Ist es z.B. möglich, die für den Puffer eingestellte Farbe im Laufe des Programms zu ändern?
#Eigenschaft indicator_color1 Weiß
Ist es möglich, diesen Parameter programmatisch im Modul start() zu ändern?
Ist es z.B. möglich, die für den Puffer eingestellte Farbe im Laufe des Programms zu ändern?
Das glaube ich nicht. Und warum sollte das so sein?