Tradestation User Group Germany (http://www.tradernet.org/wbb/index.php)
|- Newbies (http://www.tradernet.org/wbb/board.php?boardid=3)
|-- Plot Anweisungsfrage für fortgeschrittene (http://www.tradernet.org/wbb/threadid.php?boardid=3&threadid=1403)


Geschrieben von Osmose am 05.05.2003, 13:44:

  Plot Anweisungsfrage für fortgeschrittene

Hallo

Also es geht um Folgendes Problem in ela bei der Plot Anweisung.

Wenn ich plot1[ var1 ] (move,"Tmove"); mit var1 als zb 12

und nun möchte ich ein paar Bars später sagen wir mal 3 Bars den Plotpunkt ändern das wäre kein problem in dem man einfach plot1[ var1 ] (move,"Tmove"); mit var1 = 15 so könnte ich den wert ändern , nun will ich aber nicht den Wert ändern sondern den Plotpunkt löschen und ihn an eine andere stelle setzen nämlich 3 Bars weiter rechts an die aktuelle Bar.


Es muss doch soetwas geben wie ein Delete oder eine Möglichkeit wie ich den Plotpunkt verschieben kann auf der Barachse. Oder kann man in die Plotreihe einen "imaginären" Punkt einfügen dass sich der Plotpunkt verschiebt also irgenwas aus der Trickkiste. zb es gibt ja kein noplot[15](1); oder so.

mfg
Osmose


Geschrieben von Uwe am 05.05.2003, 15:49:

 

Zitat:
Original von Osmose

Es muss doch soetwas geben wie ein Delete oder eine Möglichkeit wie ich den Plotpunkt verschieben kann auf der Barachse. Oder kann man in die Plotreihe einen "imaginären" Punkt einfügen dass sich der Plotpunkt verschiebt also irgenwas aus der Trickkiste. zb es gibt ja kein noplot[15](1); oder so.




Hallo Osmose!

Plot1 bis Plot4 sind Graphen von Zeitreihen, z.B. MovingAverage(Close,Len), die an die Zeitachse gebunden sind. Die Verschiebungmöglichkeit der Darstellung über plotX[displacement](...) hast Du bereits dargestellt.

Eine Zuweisung an die Werte der darstellbaren Zeitreihen ist nur für den aktuellen Bar möglich
(zulässig: val1 = Average(Close, Len) oder var1 = DisplAverage(close, Len, diplacement);
unzulässig: val[5] = Average(Close, Len)).

Ein "Delete" oder gar "Insert" ist also nicht nicht möglich.

Jedoch, je nach Problemstellung, könnte es vielleicht erreichbar sein, dass man über eine ShowMe-Study oder über die Anwendung von Trendlinien den gewünschten Effekt erzielt.

Gruß,
Uwe

P.S.
Anweiseungen für Fortgeschrittene werden bestimmt ausführlichst im entsprechenden Unter-Forum besprochen und mit Beispielen erläutert, da dieser Teil des Boardes der allgemeinen, überschaulichen Orientierung vorbehalten bleiben sollte.


Geschrieben von Gerd am 15.05.2003, 10:47:

 

Hallo O.,

den Plot-Punkt von zurückliegenden bars zu entfernen geht für historische bars nicht.
Es gibt eine "NoPlot" Anweisung, die allerdings nur für den aktuellen bar im Realtimebetrieb gedacht ist.
D.h. diese NoPlot Anweisung funktioniert nicht für zurückliegende bars.

Gibt es eine Möglichkeit, trotzdem alte Plots zu entfernen?
Ja!!
Und zwar mit "Text"-Plots: "TEXT_NEW".
Hier gibt es auch die Anweisung: "TEXT_DELETE", mit der man über eine geeignete Programmierung (im Reference Guide nachgucken) alte Plots an beliebiger Stelle wieder entfernen kann.

Ich habe allerdings die Erfahrung gemacht, daß diese Variante auch nicht absolut optimal ist, da bei extrem schneller Kursbewegung sich die Textprogrammierung irgendwann "aufhängt" und dann nicht weiterläuft (wenn Du "update every tick" eingestellt hast).
Aber wenn Du Deine Programmierungen z.B. nur einmal pro bar aktualisierst, dann klappt es sehr gut!!

P.S.:
Was ich hier gesagt habe, gilt für TS u. ProSuite 2000i.
Was TradeStation in die neueren Versionen bis SP7 reingetan hat, weiß ich nicht.

Gruß Gerd


Geschrieben von Uwe am 15.05.2003, 22:16:

 

Zitat:
Original von Gerd

Ich habe allerdings die Erfahrung gemacht, daß diese Variante auch nicht absolut optimal ist, da bei extrem schneller Kursbewegung sich die Textprogrammierung irgendwann "aufhängt" und dann nicht weiterläuft (wenn Du "update every tick" eingestellt hast).




Hallo Gerd!

Nach Deiner Beschreibung der möglichen Schwierigkeiten («...irgendwann "aufhängt" ...»<(i>) könnte eine Ursache auchdarin liegen, dass die Text-ID mit einem nicht gültigem Wert zurückgegeben wird. Generellwürde ich also immer empfehlen, diegültigkeit der ID-Nr., die Initialisierung Text_new zurückliefert, als Kriterium dafür zu verwenden, dass die Texteigenschaftengesetzt werden wennsie gültig ist und die entsprechende Anweisungen übersprungenwerde,wenn sie ungültig sind.

TXID =Text_new(...)
if TXID > 0 then
begin
...
....Text_SetColor(TXID, ...);
...
end;

Bei vielen TXIDs kannes dabeizum "Überlauf" kommen, sodass neuere Einträge überhaupt nicht mehr angenommen werden. In diesem Fall sollte man auf eine Verwaltung der TXIDs in einemArray übergehen, wo man die entsprechnd ältesten Einträge durch das Hochschieben (push) herausfallen läßt.

Gruß,
Uwe


Geschrieben von Osmose am 15.05.2003, 23:46:

 

Hallo


Ok danke erstmal für die ideen ich habe das nun so gelöst, dass ich ich die 'alten plots' so umrechne dass es auschaut als wären sie weg also in den neunen kurvenverlauf einbinden dann passt das schon ist alles etwas aufwendig aber es geht nicht anders.

Also vielen dank für die infos, außerdem könnte man mit trendlines den aktuen teil machen und dann wenn der fest steht und in nicht mehr veränderbare wertere übergeht sie mit einem plot machen und dann alles wie in einem schieberegister

ich weis ja wirklich nicht warum es so umständlich sein muss wenn es doch über branumern referenzierte bars sind aber das wissen die omegaleute bestimmt auch nicht selber, warum das so ist.

gruss
Osmose

Powered by: Burning Board 1.1.1 © 2001 by WoltLab