![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Ich schlage Folgendes vor: Fügen Sie den Indikator (die Variante, die vorher funktioniert hat, ohne Änderungen) hier oder in meiner persönlichen Nachricht an, ich werde ihn korrigieren.
Hallo, Pawlik!
Das ist die Version.
Original.
Versuchen Sie, den Code zu ziehen
pansa
//+------------------------------------------------------------------+
//| AltrTrend_Signal_v2_2.mq4
//| Ramdass - Nur Konvertierung
//+------------------------------------------------------------------+
#property copyright "Autor - OlegVS, GOODMAN"
#property indicator_chart_window
#Eigenschaft indicator_buffers 2
#property indicator_color1 Chartreuse
#Eigenschaft indicator_color2 Gelb
#Eigenschaft indicator_width1 2
#property indicator_width2 2
//---- Eingabeparameter
extern int K=30;
extern double Kstop=0.5;
extern inttern Kperiod=150;
extern inttern PerADX=14;
extern inttern CountBars=350;
extern intON=1; //zakton's
//---- Puffer
double val1[];
double val2[];
//+------------------------------------------------------------------+
//| Benutzerdefinierte Initialisierungsfunktion für Indikatoren|
//+------------------------------------------------------------------+
int init()
{
string kurz_name;
//----Indikatorzeile
IndikatorPuffer(2);
SetIndexStyle(0,DRAW_ARROW);
SetIndexPfeil(0,159);
SetIndexStyle(1,DRAW_ARROW);
SetIndexPfeil(1,159);
SetIndexPuffer(0,val1);
SetIndexPuffer(1,val2);
//----
zurück(0);
}
//+------------------------------------------------------------------+
//| AltrTrend_Signal_v2_2|
//+------------------------------------------------------------------+
int start()
{
if (CountBars>=Bars) CountBars=Bars;
SetIndexDrawBegin(0,Bars-CountBars+PerADX);
SetIndexDrawBegin(1,Bars-CountBars+PerADX);
int i,shift,counted_bars=IndicatorCounted();
int i1,i2;
double Range,AvgRange,smin,smax,SsMax,SsMin,SSP,price;
bool uptrend,old;
//----
if(Bars<=PerADX+1) return(0);
//---- anfänglicher Nullpunkt
if(gezählte_Balken<PerADX+1)
{
for(i=1;i<=PerADX;i++) val1[CountBars-i]=0.0;
for(i=1;i<=PerADX;i++) val2[CountBars-i]=0.0;
}
//----
for (shift = CountBars-PerADX; shift>=0; shift--)
{
SSP=MathCeil(Kperiod/iADX(NULL,0,PerADX,PRICE_CLOSE,MODE_MAIN,1));
Bereich=0;
AvgRange=0;
for (i1=shift; i1<=shift+SSP; i1++)
{AvgRange=AvgRange+MathAbs (High[i1]-Low[i1]);
}
Reichweite=AvgRange/(SSP+1);
SsMax=High[shift]; SsMin=Low[shift];
for (i2=shift;i2<=shift+SSP-1;i2++)
{
price=High[i2];
if(SsMax<Preis) SsMax=Preis;
price=Low[i2];
if(SsMin>=Preis) SsMin=Preis ;
}
smin = SsMin+(SsMax-SsMin)*K/100;
smax = SsMax-(SsMax-SsMin)*K/100;
val1[shift]=0;
val2[shift]=0;
if (Close[shift]<smin)
{
Aufwärtstrend = false;
}
wenn (Close[shift]>smax)
{
Aufwärtstrend = wahr;
}
if (uptrend!=old && uptrend==true) {val1[shift]=Low[shift]-Range*Kstop;}
if (uptrend!=old && uptrend==false) {val2[shift]=High[shift]+Range*Kstop;}
old=uptrend;
// zakton's code
if ((shift == 0) && (SoundON == 1)) {
if (val1[0] > 0) PlaySound("ReadyToExit.wav");
}
if ((shift == 0) && (SoundON == 1)) {
if (val2[0] > 0) PlaySound("ReadyToExit.wav");
}
}
zurück(0);
}
//+--------------------------------------------------------Hallo, Pawlik!
Das ist die Version.
Original.
Versuchen Sie, den Code zu ziehen
pansa
Sr. Pansa! Warum wird der SRC-Button nicht zum Einfügen des Codes verwendet? Así mejor o Ud. tiene alguna duda?
Buena suerte!
Hallo, Pawlik!
Das ist die Version.
Original.
Versuchen Sie, den Code zu ziehen
pansa
Der Indikator funktioniert, aber der Entwickler hat einen logischen Fehler darin gemacht
ALLES KLAR?
ALLES KLAR?
Hallo Pawlik!
Ich habe Ihren Code installiert.
Es funktioniert perfekt!
Du bist ein großes Talent -
Du hast die Mauer durchbrochen!
Großartige Arbeit -
jetzt zuverlässige Signale und
♪ Neue Horizonte! ♪
Was für ein guter Tag heute!
Ich möchte mich besonders bei Integer bedanken.
Er hat das Drehbuch für den Spieleraufruf geschrieben!
Es gibt aber auch Talente und gute Menschen.
Hut ab vor Ihnen!
Heute ist der 9/11/14!
Panza
Die meisten meiner Müllwarnungen werden aufgrund einer völlig legalen, korrekten und standardmäßigen Übergabe einer Variablen per Referenz in eine Funktion erzeugt, wenn der Name der Funktionsvorlage mit der Variablen selbst übereinstimmt, wie es in diesem Konstrukt in seiner standardmäßigen und typischen Verwendung sein sollte, wenn die Variable selbst mit ihrem eigenen Namen an die Funktion übergeben wird.
Nennen Sie bitte ein Beispiel.
Leider konnte der MC keine kompetente und logische Erklärung dafür geben, da es bei ähnlichen Namen manchmal zu Missverständnissen bei anderen Konstruktionen kommen kann.
Wenn ich den Fall richtig verstanden habe, war die Antwort sowohl logisch als auch richtig und wurde in mehr als ein paar Jahrzehnten kontinuierlicher Programmierung gelernt.
Entschuldigung für den versehentlich gelöschten Kommentar - ich habe auf die falsche Stelle geklickt und es gibt keine Funktion, um ihn wiederherzustellen.
Nennen Sie mir bitte ein Beispiel.
Wenn ich den Fall richtig verstanden habe, war die Antwort sowohl logisch als auch richtig, und sie hat sich in mehr als zwei Jahrzehnten kontinuierlicher Programmierung bewährt.
Der Editor erzeugte die Warnung "Deklaration von 'a' versteckt globale Deklaration in Zeile 4" und "Deklaration von 'b' versteckt globale Deklaration in Zeile 4" für dieses standardmäßige, legale und populäre Konstrukt nach C-Sprachstandards, das auch von seinem Wesen her falsch und ungebildet ist, weil es weder die Deklaration einer neuen Variablen innerhalb einer Funktion noch irgendeinen Hinweis auf eine mögliche Variablenüberschneidung gibt.
Das Ergebnis sind Hunderte von unangemessenen Warnungen selbst in einem nicht allzu großen Programmcode.
Der Indikator funktioniert, aber der Entwickler hat einen logischen Fehler darin gemacht
Hallo Vinin!
Sie haben den Indikator überprüft: AltrTrend_Signal_v2_2.mq4
und fand einen logischen Fehler
in der Formel : SSP=MathCeil (Kperiod/iADX(NULL,0,PerADX,PRICE_CLOSE,MODE_MAIN,1))
Sie haben die 1 am Ende unterstrichen
was sollte es Ihrer Meinung nach sein?
pansa