Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 1106

 
evillive:

ObjectSetInteger(0,Pfeil_name_jack1,OBJPROP_ANCHOR,ANCHOR_BOTTOM);

Ich empfehle, die Namen der oberen und unteren Pfeile in separaten Variablen zu speichern, um Verwechslungen zu vermeiden.

Und ja, das Zeichnen von Pfeilen im Indikator mit Objekten ist eine Perversion. Es gibt Indikatorpuffer.

Danke, es funktioniert alles.

Bleiben dieIndikatorpuffer erhalten, wenn die Indikatorsignalbedingungen bereits fehlen? (alte Pfeile sollten beim Neuzeichnen nicht verschwinden))

 
mikanit:

Danke, es funktioniert alles.

Bleiben die Indikatorpuffer erhalten, wenn die Indikatorsignalbedingungen nicht mehr gegeben sind? (alte Pfeile sollten beim Neuzeichnen nicht verschwinden))

Das hängt von dem Code ab. Wird immer nur der Nullbalken berücksichtigt, bleiben die alten Pfeile erhalten, bis sich die TF oder die Benutzerparameter ändern. Wenn dann der Indikator neu gezeichnet wird, werden auch die Puffer neu gezeichnet.

Wer braucht schon einen Indikator zum Umzeichnen? Welchen Sinn hat es, wenn die Objekte erhalten bleiben, aber der berechnete Wert des Indikators nicht mehr vorhanden ist und neue Pfeile erscheinen, die das Diagramm durcheinander bringen?

Wenn die Objekte bei der Neuinitialisierung gelöscht werden, werden auch die von den Objekten gezeichneten Pfeile neu gezeichnet.

 
evillive:

Das hängt vom Code ab. Wird immer nur der Nullbalken berücksichtigt, bleiben die alten Pfeile erhalten, bis sich die TF oder die Benutzerparameter ändern. Wenn der Indikator dann neu gezeichnet wird, werden auch die Puffer neu gezeichnet.

Wer braucht schon einen Indikator zum Umzeichnen? Welchen Sinn hat es, wenn die Objekte erhalten bleiben, aber der Berechnungswert des Indikators nicht mehr vorhanden ist und neue Pfeile erscheinen, die das Diagramm durcheinander bringen?

Wenn die Objekte bei der Neuinitialisierung gelöscht werden, werden auch die von den Objekten gezeichneten Pfeile neu gezeichnet.

Die "fehlgeschlagenen" Pfeile verändern meine weiteren Aktionen für die neuen Pfeile usw. Ich arbeite mit drei Indikatoren, die die "nicht gehalten" Signale verlassen, dupliziere ich manuell mit Symbolen, wenn ich das Terminal neu laden müssen, dann neu laden.

Nochmals vielen Dank.

 

Grüße an alle!!!!

Ich habe eine Frage an Sie pros....

Einfach ausgedrückt, ich habe eine Trendlinie an zwei Punkten gezeichnet, aber ich habe eine Frage. Wie kann man sie weiter ausdehnen, z. B. für ein paar Tage oder auf ein bestimmtes Ereignis (wobei sie sich auf die zwei vergangenen Punkte beziehen würde und der dritte durch Extrapolation bestimmt wurde)?

Nicht in den Strahlenmodus (unendlich) schalten!!! Ich habe versucht, die Koordinaten des neuen Punktes zu berechnen, indem ich Dreiecke verglichen habe, z.B. wie viel Mal mehr Zeit, den gleichen Betrag mehr und den Preis, aber es stellt sich als Unsinn heraus, da ich Ameisen mit Elefanten vergleiche((((( Vielleicht hat jemand solche Probleme gehabt und hat eine Lösung....

 
blo0ds.:

Grüße an alle!!!!

Ich habe eine Frage an Sie pros....

Einfach ausgedrückt, ich habe eine Trendlinie an zwei Punkten gezeichnet, aber ich habe eine Frage. Wie kann man es weiter ausdehnen, sagen wir für ein paar Tage oder auf ein bestimmtes Ereignis (während es auf 2 oder 2 vergangenen Punkten gehen würde, und der 3. wird durch Extrapolation bestimmt)?

Ich möchte nicht in den Strahlenmodus (Unendlichkeit) wechseln!!! Ich habe versucht, die Koordinaten des neuen Punktes zu berechnen, indem ich Dreiecke verglichen habe, z.B. wie viel Mal mehr Zeit, die gleiche Menge mehr und den Preis, aber es stellt sich als Unsinn heraus, weil ich Ameisen mit Elefanten vergleiche((((( Vielleicht ist jemand mit solchen Problemen konfrontiert worden und hat eine Lösung....

Versuchen Sie diese Lösung:

1. zeichne die Trendlinie auf den gegebenen Punkten als Strahl.

2. gegebenenfalls seinen Wert zu bestimmen (z. B. Verlängerung um mehrere Tage oder bis zu einem bestimmten Ereignis)

3. Wir ändern die zweite Koordinate und entfernen die Eigenschaft "Strahl".

 
AlexeyVik:

Versuchen Sie diese Lösung:

1. Zeichne die Trendlinie an den gegebenen Punkten als Strahl.

2. den Wert bei Bedarf festlegen (z. B. um mehrere Tage oder auf ein bestimmtes Ereignis ausdehnen)

3. Ändern Sie die zweite Koordinate und löschen Sie die Eigenschaft "Strahl".

Ich habe bereits darüber nachgedacht, konnte es aber im Referenzmaterial nicht herausfinden... Ich verstehe, dass dies mit der Funktion objectget geschieht, aber ich weiß nicht, wie (ich meine das Entfernen der Koordinaten)
 
blo0ds.:
Ich habe darüber nachgedacht, aber ich kann es in den Referenzmaterialien nicht finden... Ich weiß, dass dies mit der Funktion objectget gemacht wird, aber ich weiß nicht, wie man es macht (ich meine, um die Koordinaten zu bekommen).

Dann erklären Sie mir doch bitte genauer, was Sie nicht verstehen.

Was meinen Sie mit "(Ich möchte Werte entfernen)"? Wenn es sich um die Zukunft handelt, berechnen Sie die Zeit selbst, und mit dieser Zeit definieren Sie den Preiswert, der der Linie ObjectGetValueByTime entspricht, und dann ändern ObjectMove die Koordinaten des zweiten Linienpunktes.

 
AlexeyVik:

Dann erklären Sie mir doch bitte genauer, was unklar ist.

Was meinen Sie mit "(ich meine Rückzug)"? Geht es um die Zukunft, so berechnen Sie die Zeit selbst und bestimmen durch diese Zeit den der Linie entsprechenden Kurswert ObjectGetValueByTime und ändern dann durch ObjectMove die Koordinaten des zweiten Punktes der Linie.

Vielen Dank, guter Mann!!!!! Ich habe nur an der falschen Stelle im Referenzmaterial nachgeschaut! Es ist sehr schön und einfach!!!

Ich hatte gestern vor dem Einschlafen noch eine Idee... Ich habe versucht, die Punktkoordinaten mit Hilfe des Dreiecksverhältnisses zu berechnen (d. h. mit dem Verhältnis, wie oft eine Seite größer ist als die andere, genauso wie die zweite Seite größer ist). Aber diese Methode funktioniert überhaupt nicht, da vertikal und horizontal unterschiedliche und nicht zusammenhängende Koordinatensysteme verwendet werden!!! Und was ist, wenn (um ein Beispiel zu geben, wie man eine Linie 2 mal länger in der Zeit) haben wir 2 Punkte und müssen die 3. zu bekommen. Wir können einfach die Zeit mit 2 multiplizieren und den Preis mit 2 multiplizieren (dementsprechend werden nur die Deltas von Zeit und Preis mit 2 multipliziert und dann zum Startpunkt addiert).

Um es einfach auszudrücken: Ich werde es jetzt versuchen!)

 
blo0ds.:

Vielen Dank, guter Mann!!!!! Ich habe nur an der falschen Stelle im Referenzmaterial nachgeschaut! Es ist sehr schön und einfach zu machen!!!

Gestern Abend vor dem Schlafengehen hatte ich eine andere Idee... Ich habe versucht, die Koordinaten eines Punktes mit Hilfe des Verhältnisses von Dreiecken zu berechnen (d. h. das Verhältnis, wie oft eine Seite größer ist als die andere, genauso wie die zweite Seite größer ist). Aber diese Methode funktioniert überhaupt nicht, da vertikal und horizontal unterschiedliche und nicht zusammenhängende Koordinatensysteme verwendet werden!!! Und was ist, wenn (um ein Beispiel zu geben, wie man eine Linie 2 mal länger in der Zeit) haben wir 2 Punkte und müssen die 3. zu bekommen. Wir können einfach die Zeit mit 2 multiplizieren und den Preis mit 2 multiplizieren (dementsprechend werden nur die Deltas von Zeit und Preis mit 2 multipliziert und dann zum Startpunkt addiert).

Einfach gesagt: Ich werde es jetzt ausprobieren!)

Dann nehmen Sie die Anzahl der Takte, nicht die Zeit, die Einheit des Stücks.

Und die Preisdifferenz geteilt durch _Point ergibt die gleichen Stücke.

Sie erhalten die dritte von der Tangente.

 
AlexeyVik:

Dann nehmen Sie die Anzahl der Takte, nicht die Zeit, die Maßeinheit der Stücke.

Und die Preisdifferenz geteilt durch _Point ergibt die gleichen Stücke.

Holen Sie sich die dritte von einer Tangente.

Nun ja Unsinn habe ich im letzten Beitrag geschrieben) Habe wie du geschrieben hast den Balken geändert) Alles funktioniert!!! Danke. Ich verstehe nur nicht, wie man + hier einfügt(((