st - Linienstil. Gültige Werte sind STYLE_SOLID (Standard), STYLE_DASH, STYLE_DOT, STYLE_DASHDOT.
wd - Linienbreite. Der Standardwert ist 1.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 02.07.2008 |//| Описание : Установка объекта OBJ_VLINE вертикальная линия |//+----------------------------------------------------------------------------+//| Параметры: |//| cl - цвет линии |//| nm - наименование ("" - время открытия текущего бара) |//| t1 - время (0 - время открытия текущего бара) |//| st - стиль линии (0 - простая линия) |//| wd - ширина линии (1 - по умолчанию) |//+----------------------------------------------------------------------------+voidSetVLine(colorcl, stringnm="", datetimet1=0, intst=0, intwd=1){if(nm=="")nm=DoubleToStr(Time[0], 0);
if(t1<=0)t1=Time[0];
if(ObjectFind(nm)<0)ObjectCreate(nm, OBJ_VLINE, 0, 0,0);
ObjectSet(nm, OBJPROP_TIME1, t1);
ObjectSet(nm, OBJPROP_COLOR, cl);
ObjectSet(nm, OBJPROP_STYLE, st);
ObjectSet(nm, OBJPROP_WIDTH, wd);
}
Zeigen Sie es in der Abbildung, lassen Sie uns versuchen, es zu tun.
Eine benutzerdefinierte Funktion, die die durch den Indikator beschriebenen Bereiche berechnet, z. B. RSI und die Mittellinie.
Der Raum, der von der Kurve unterhalb der Mittellinie und der Mittellinie selbst begrenzt wird, ist die Fläche -S1, und oberhalb der Mittellinie ist +S2.
Igor, ich wende mich an Sie als erfahreneren MQL4-Programmierer.
Ich habe begonnen, eine Bibliothek für Kohonens Netzwerk zu schreiben.
Ich möchte es so flexibel und bequem wie möglich machen, aber ich habe einen Moment erlebt, den ich noch nicht überwinden kann.
Beispiel 1:
int& value; // так нельзя, интересует аналог на MQL4, если он есть
voidAssignValue(int& newValue){value = newValue;
}voidSetValue(intnewValue){value = newValue;
}intinit(){intsomeValue = 5;
AssignValue(someValue);
SetValue(10);
Print(someValue); // очень хочется, чтобы вывелось 10}
Ist es möglich, dies mit MQL4 zu tun, und wenn ja, wie?
Beispiel2:
voidSetSize(double& matrix[][], intinSize, intoutSize){// требуется установить размеры матрицы, не осилил}voidInit(double& matrix[][]){// допустим, требуется проиниализировать всю матрицу значением 1, также не осилил}
Nochmals, wenn es möglich ist, geben Sie mir bitte den Code. Dieses Beispiel scheint mir realisierbar.
TheXpert писал (а)>> Ich möchte es so flexibel und bequem wie möglich gestalten, aber ich habe einen Moment, den ich noch nicht überwinden kann. >> Beispiel1: Ist es möglich, dies mit MQL4-Tools zu tun, und wenn ja, wie?
Ich verstehe, dass Sie die Arbeit mit Zeigern organisieren wollen. So dass eine Variable auf eine andere verweist... Oder habe ich es vielleicht falsch verstanden? Versuchen Sie, in Worten zu erklären, was Sie brauchen.
TheXpert schrieb >> Beispiel2: Nochmals, wenn es möglich ist, dies zu tun, geben Sie mir bitte den Code. Dieses Beispiel scheint mir umsetzbar zu sein.
Ich verstehe, dass Sie die Arbeit mit Zeigern organisieren wollen. So dass eine Variable auf eine andere verweist... Oder habe ich es vielleicht falsch verstanden? Versuchen Sie, in Worten zu erklären, was Sie brauchen.
Ja, gewissermaßen.
Zum zweiten - wie wäre es mit einer Initialisierung mit Zufallswerten?
Zeiger in MQL4 sind knifflig. Es gibt keine direkte Unterstützung. Jemand hier im Forum hat versucht, es mit Arrays zu machen, glaube ich. Genauer kann ich es nicht sagen. Suchen Sie selbst danach.
TheXpert schrieb (a) >> Was die zweite Frage angeht: Wie wäre es mit einer Initialisierung mit Zufallswerten?
TheXpert schrieb (a) >> Ja, ich brauche auch genau dynamische Arrays.
Nur die erste Dimension des Arrays kann programmatisch geändert werden. Die Funktion ArrayResize(). Die zweite, dritte und vierte Dimension müssen starr festgelegt werden.
Die Funktion SetVLine().
Diese Funktion setzt die vertikale Linie des Objekts OBJ_VLINE im aktuellen Diagramm.
Beispiele für die Verwendung von SetVLine().
SZY: Im Anhang finden Sie ein Skript zum Testen der Funktion SetVLine().
EXEKUTIV. >> ICH WERDE ES TUN.
Zeigen Sie mir ein Bild, lassen Sie uns versuchen, eines zu machen.
Zeigen Sie es in der Abbildung, lassen Sie uns versuchen, es zu tun.
Eine benutzerdefinierte Funktion, die die durch den Indikator beschriebenen Bereiche berechnet, z. B. RSI und die Mittellinie.
Der Raum, der von der Kurve unterhalb der Mittellinie und der Mittellinie selbst begrenzt wird, ist die Fläche -S1, und oberhalb der Mittellinie ist +S2.
Gesendet an https://www.mql5.com/ru/forum/109590, um sich nicht einzumischen.
Die Funktion SetTLine().
Diese Funktion setzt das OBJ_TREND-Trendlinienobjekt auf dem aktuellen Chart.
Beispiele für die Verwendung von SetTLine().
HH: Im Anhang finden Sie ein Skript zum Testen der Funktion SetTLine().
Igor, ich wende mich an Sie als erfahreneren MQL4-Programmierer.
Ich habe begonnen, eine Bibliothek für Kohonens Netzwerk zu schreiben.
Ich möchte es so flexibel und bequem wie möglich machen, aber ich habe einen Moment erlebt, den ich noch nicht überwinden kann.
Beispiel 1:
Ist es möglich, dies mit MQL4 zu tun, und wenn ja, wie?
Beispiel2:
Nochmals, wenn es möglich ist, geben Sie mir bitte den Code. Dieses Beispiel scheint mir realisierbar.
Ich danke Ihnen im Voraus.
Ich möchte es so flexibel und bequem wie möglich gestalten, aber ich habe einen Moment, den ich noch nicht überwinden kann.
>> Beispiel1:
Ist es möglich, dies mit MQL4-Tools zu tun, und wenn ja, wie?
Ich verstehe, dass Sie die Arbeit mit Zeigern organisieren wollen. So dass eine Variable auf eine andere verweist... Oder habe ich es vielleicht falsch verstanden? Versuchen Sie, in Worten zu erklären, was Sie brauchen.
Beispiel2:
Nochmals, wenn es möglich ist, dies zu tun, geben Sie mir bitte den Code. Dieses Beispiel scheint mir umsetzbar zu sein.
Ich verstehe, dass Sie die Arbeit mit Zeigern organisieren wollen. So dass eine Variable auf eine andere verweist... Oder habe ich es vielleicht falsch verstanden? Versuchen Sie, in Worten zu erklären, was Sie brauchen.
Ja, gewissermaßen.
Zum zweiten - wie wäre es mit einer Initialisierung mit Zufallswerten?
Ja, ich brauche auch genau dynamische Arrays.
Ja, so in etwa.
Zeiger in MQL4 sind knifflig. Es gibt keine direkte Unterstützung. Jemand hier im Forum hat versucht, es mit Arrays zu machen, glaube ich. Genauer kann ich es nicht sagen. Suchen Sie selbst danach.
Was die zweite Frage angeht: Wie wäre es mit einer Initialisierung mit Zufallswerten?
MathRand()
Ja, ich brauche auch genau dynamische Arrays.