Ab zur Home-Seite von Low-Margin.com (Tickdownloader/Anleitungen&Videos/Development/SiteMap)
Registrierung Häufig gestellte Fragen Trader-Chat zum Low-Margin.com-Forum Suche Mitgliederliste Startseite


shck's Forum » Trading » Handelssysteme & Technische Analyse » TradeStadion: Programmierfragen » Hallo Gast [registrieren|anmelden]
« Vorheriges Thema | Nächstes Thema » Druckversion | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Autor
[Sortierung: aufsteigend / absteigend] [  1  2    »  ]  
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
TradeStadion: ProgrammierfragenAntwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

Hallo,

komme mit einem Problem nicht weiter. Vielleicht kann jemand helfen.

Möchte die OpenUp und/oder OpenDowns jeweils in Folge addieren. Wie kann ich diese Ergebnisse alternativ in Prozent darstellen lassen?

Indicator:

code:

variables:

OpenUp(0),
OpenDown(0),
SumOpenUp(0),
SumOpenDown(0);

OpenUp = high - open;
OpenDown = open - low;

Condition1 = OpenUp > OpenDown;
Condition2 = OpenUp < OpenDown;

if Condition1 then begin

SumOpenUp = SumOpenUp + OpenUp ;

SumOpenDown = 0;

end;

if Condition2 then begin

SumOpenDown = SumOpenDown + OpenDown;

SumOpenUp = 0;

end;

Plot1(SumOpenUp ,"SummeOpUp ",green);
Plot2(-SumOpenDown ,"SummeOpDn ",red);


Grundsätzlich soll: Wenn OpenUp > OpenDown in Folge, dann summiere die OpenUp's.

Beispiel am AX MT:

1. OpenUp am 15.05. = 99 P
2. OpenUp am 16.05. = 49 P
3. OpenUp am 18.05. = 136 P

Die Summe der OpenUp's in Folge wäre = 284 P. Das wäre das Ergebnis für Style = 1.

Nun würde ich gern die Bewegung "284 P" auf das Open vom 15.05. (7450 P) in Prozent darstellen (Style = 2). Die Berechnung wird beendet, wenn OpenUp < OpenDown ist.

Über Style 3 soll die "wahre Bewegung" in Prozent der OpenUp´s in Folge vom Open (15.05.) bis Close (18.05.) berechnet werden.


Danke für Eure Hilfe.

Thomas



19.05.2007, 12:09 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
shck
Administrator




Dabei seit: September 2003
Herkunft: Burg
Beiträge: 526
Antwort mit Zitat Nach weiteren Beiträgen von shck suchen Diesen Beitrag einem Moderator melden

habe mal den code für 3 styles entwickelt. anzeige aller styles mit einem indie in 3 subcharts - wie im chart unten zu sehen - möglich.

beispielrechnung:

code:

15.05.2007 Open 7450.00 High 7549.00 Low 7442.00 Close 7490.00
16.05.2007 Open 7498.50 High 7547.50 Low 7483.50 Close 7546.00
18.05.2007 Open 7506.00 High 7642.00 Low 7502.00 Close 7642.00Style = 1 -> 284 P (berechnung siehe oben)
Style = 2 -> 3.81 %

SumOpenUp = (7549 - 7450) + (7547.50 -7498.50) + (7642 - 7506) = 284

=> ((7450 + SumOpenUp) * 100 / 7450) - 100 = 3.81 %

Style = 3 -> 2.58 % OpenDown;
Condition2 = OpenUp < OpenDown;


if Condition1 then
begin
SumOpenUp = SumOpenUp + OpenUp;
SumOpenDown = 0;
end;

if Condition2 then
begin
SumOpenDown = SumOpenDown + OpenDown;
SumOpenUp = 0;
end;


if (SumOpenUp > 0 and SumOpenUp[1] = 0) or (SumOpenDown > 0 and SumOpenDown[1] = 0) then
begin
if (SumOpenUp > 0 and SumOpenUp[1] = 0) then shckStatus = 1
else shckStatus = -1;

OpenStart = open;
end;

if Style = 1 then
begin
Plot1(SumOpenUp, "SummeOpUp ", darkgreen);
Plot2(-SumOpenDown , "SummeOpDn ", red);
end;

if Style = 2 then
begin
OpenCountP = (((OpenStart + SumOpenUp - SumOpenDown) * 100) / OpenStart) - 100;

if shckStatus = 1 then shckColor = darkgreen
else shckColor = red;

Plot3(OpenCountP, "%OpenCountP", shckColor);
end;

if Style = 3 then
begin
OpenPerfP = ((Close * 100) / OpenStart) - 100;

if OpenPerfP >= 0 then shckColor = darkgreen
else shckColor = red;

Plot4(OpenPerfP, "%OpenPerfP", shckColor);
end;



19.05.2007, 23:49 shck ist offline Profil von shck Füge shck deiner Freunde-Liste hinzu Email an shck senden Homepage von shck
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

Das sieht sehr gut aus.

Danke und eine dreiviertel Verbeugung

20.05.2007, 08:25 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

@shck

Hallo,

wollte die Ergebnisse gern darstellen und kann "OpenCountP" und "OpenPerfP" nicht über den Print Befehl darstellen:

*******

if d d[1] then print(numtostr(date,0) + "," +
numtostr(open,2) + "," +
numtostr(OpenUp,2) + "," +
numtostr(-OpenDown,2) + "," +
numtostr(SumOpenUp,2) + "," +
numtostr(-SumOpenDown,2) + "," +
numtostr(OpenCountP,2) + "," +
numtostr(OpenPerfP,2) + "," + "");

*******

Habe ich einen Denkfehler?

Danke für eine Antwort.

PS: Gibt es einen "Trick", damit ich den Print und FileAppend Befehl zusammen in einer Zeile schreiben kann?

21.05.2007, 17:10 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
shck
Administrator




Dabei seit: September 2003
Herkunft: Burg
Beiträge: 526
Antwort mit Zitat Nach weiteren Beiträgen von shck suchen Diesen Beitrag einem Moderator melden

da gibt es einen super trick! alle daten aus dem 'Data Window' (unter View - Data Window) können in eine datei geschrieben oder ausgedruckt werden.

aus meinem obigen code habe ich mal 3 einzel-indikatoren mit jeweils nur einem plot (außer bei SummeOpUp/SummOPDn, da sind's 2) erstellt, damit nicht immer alle 4 plots je indi (bei dem style-code wären es nämlich 3 indies x 4 plots) im Data Window erscheinen, obwohl die meisten felder - je nach style - leer sind, weil immer nur 1 bzw. 2 werte angezeigt werden und die anderen nicht.


warum möchtest du denn den Print- und den FileAppend-befehl gleichzeitig ausführen, sie machen doch das gleiche.
wenn du nur daten in dateien schreiben möchtest, reicht der FileAppend-befehl.

07-05-22_Data-Window.zip (7 KB, 3 mal heruntergeladen)

22.05.2007, 11:12 shck ist offline Profil von shck Füge shck deiner Freunde-Liste hinzu Email an shck senden Homepage von shck
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

@shck

"da gibt es einen super trick!"

:-) Ja klar, aber hier muss ich immer im Code eingreifen, denn sonst wird alles angezeigt. Wie Du schon geschrieben hast.

Ich "möchte" die Plots im Chart auch sehen, um schnell eine Situation optisch erfassen zu können. Oder wie hast Du den Code für Data Window aufbereitet?

"alle daten aus dem 'Data Window'"

Leider kann man die Datei nicht automatisch z.B. als csv exportieren.

"warum möchtest du denn den Print- und den FileAppend-befehl gleichzeitig ausführen,"

Mit dem PrintBefehl kann ich im DebugFenster Werte schnell prüfen (auch einzeln suchen) und mit dem FileAppend-Befehl soll die Datei z.B. als csv exportiert werden.

Somit kann eine ExcelDatei (Auswertung) voreingestellt immer fortlaufend mit den aktuellen Daten aktualisiert werden.

Über Data Window geht das nicht. Oder?

Es stellt sich weiterhin die Frage, warum (OpenCountP,2) und (OpenPerfP,2) nicht über den Print- und/oder den FileAppend-Befehl dargestellt werden können.

Gruß Thomas

22.05.2007, 11:51 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
shck
Administrator




Dabei seit: September 2003
Herkunft: Burg
Beiträge: 526
Antwort mit Zitat Nach weiteren Beiträgen von shck suchen Diesen Beitrag einem Moderator melden

Zitat:
Ich "möchte" die Plots im Chart auch sehen, um schnell eine Situation optisch erfassen zu können. Oder wie hast Du den Code für Data Window aufbereitet?
kannst du ja auch, denn:
Zitat:
aus meinem obigen code habe ich mal 3 einzel-indikatoren mit jeweils nur einem plot...
also, statt 3x den selben indi mit verschiedenen styles darzustellen, werde nun 3 "verschiedene" indies angezeigt. optisch siehts also gleich aus, im Data Window sind dann aber je indi nur 1-2 plot-ausgaben statt 4.

txts kann man übrigens auch in excel darstellen lassen, um dann weitere berechnungen durchführen zu können: Link.

wenn es dir nur um die schnelle anzeige von werten zur überprüfung geht, dann hilft dir bestimmt das 'Message Log'-fenster weiter.

22.05.2007, 12:08 shck ist offline Profil von shck Füge shck deiner Freunde-Liste hinzu Email an shck senden Homepage von shck
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

@shck

Zitat:
Data Window sind dann aber je indi nur 1-2 plot-ausgaben statt 4.
Habe es verstanden (siehe Chart). Muss bei Dir erst "umdenken"

Zitat:
txts kann man übrigens auch in excel darstellen lassen, um dann weitere berechnungen durchführen zu können
Danke für den Link und die Ausdauer

Gruß Thomas



22.05.2007, 12:40 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

Hallo!

Mal wieder eine Frage:

Wie rechne ich die Up und DnTicks pro Tag richtig zusammen?


*******
var: sumUpTick(0),sumDnTick(0);


if d d[1] then begin

sumUpTick = 0;
sumDnTick = 0;
end;


if d d[1] then begin
{neuer Tag -> neue Summe...}
sumUpTick = UpTicks;
sumDnTick = DownTicks;
end
else begin
sumUpTick = SumList(UpTicks, sumUpTick);
sumDnTick = Sumlist(DownTicks,sumDnTick);
end;


Plot1(sumUpTick,"Plot1",green);
Plot2(-sumDnTick,"Plot2",red);

*******

Danke!

28.06.2007, 11:24 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
shck
Administrator




Dabei seit: September 2003
Herkunft: Burg
Beiträge: 526
Antwort mit Zitat Nach weiteren Beiträgen von shck suchen Diesen Beitrag einem Moderator melden

also, dein code zeigt bereits am ende des tages das korrekt aufsummierte volumen an. du kannst die summe (hier plot3) mit dem volumen-indikator-wert vom daily chart überprüfen. du kannst aber auch ein höheres timeframe verwenden (z.b. 240min) und dann die volumen-indikator-werte rasch zusammen addieren und mit deinem indi-wert vergleichen.

code:

var: sumUpTick(0), sumDnTick(0);


if d d[1] then
begin
sumUpTick = 0;
sumDnTick = 0;
end;


if d d[1] then
begin
{neuer Tag -> neue Summe...}
sumUpTick = UpTicks;
sumDnTick = DownTicks;
end
else
begin
sumUpTick = sumUpTick + UpTicks;
sumDnTick = sumDnTick + DownTicks;
end;


Plot1(sumUpTick,"Plot1",green);
Plot2(-sumDnTick,"Plot2",red);
Plot3(sumUpTick + sumDnTick,"Plot3",red);


28.06.2007, 16:18 shck ist offline Profil von shck Füge shck deiner Freunde-Liste hinzu Email an shck senden Homepage von shck
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

Danke für Deine Antwort. Ich würde gern ein paar Ausführungen von Dir in Anspruch nehmen. So ganz klar ist das mir noch nicht:

1.) 1 Tick im FDAX ist ein 0,5 Punkt. Bei einem Tick gibt es keinen Up oder DownTick, außer ich definiere diesen z.B. in einem Trend.

Der Plot 1 Summiert doch nun "einfach" die generierten Ticks. Oder?

2.) Plot 2 gibt das OI für den aktuellen Kontrakt an. Habe ich da nicht einen Fehler in meinem Code? Das sind also kein "DownTicks".

3.) Somit stimmt doch das Ergebnis in Plot 3 überhaupt nicht. Ich kann nicht die "summierten Ticks" mit dem OI addieren.

Vielleicht habe ich auch einen Denkfehler.

Danke für Deine Hilfe.

Thomas



28.06.2007, 17:15 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
shck
Administrator




Dabei seit: September 2003
Herkunft: Burg
Beiträge: 526
Antwort mit Zitat Nach weiteren Beiträgen von shck suchen Diesen Beitrag einem Moderator melden

das thema UpTick/DownTicks wurde schon ein paar mal im forum angesprochen, z.b. UpTicks/DownTicks letzte 3 Bars oder Upside/DownSide Volume, wo z.b. nachfolgendes bild erscheint:



zu 1.) es gibt immer einen UpTick oder DownTick, sofern du unter 'Trade Symbol - Volume -> Tick count' eingestellt hast, demnach wäre dann UpTick nicht das volumen! wenn dort 'Trade volume' steht, wird das volumen berechnet - siehe dazu den ersten link!

28.06.2007, 20:29 shck ist offline Profil von shck Füge shck deiner Freunde-Liste hinzu Email an shck senden Homepage von shck
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

Danke für die Links. Somit sind alle Fragen erledigt.

Warum werden die Ergebnisse nicht jeden Tag geplottet? Im GS liegen die Daten auch nicht vor.

Gruß Thomas



29.06.2007, 07:47 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

Im "ersten Test" waren die Daten von Up-/DownTicks aber vorhanden.



29.06.2007, 07:49 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
shck
Administrator




Dabei seit: September 2003
Herkunft: Burg
Beiträge: 526
Antwort mit Zitat Nach weiteren Beiträgen von shck suchen Diesen Beitrag einem Moderator melden

ich vermute mal, dass die daten nur realtime in den gs geschrieben werden, oder warst du am 27.06. auch nicht online?

29.06.2007, 12:14 shck ist offline Profil von shck Füge shck deiner Freunde-Liste hinzu Email an shck senden Homepage von shck
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

"ich vermute mal, dass die daten nur realtime in den gs geschrieben werden, oder warst du am 27.06. auch nicht online?"

Ich bin jeden Tag online:-) Die Daten laufen alle Realtime mit.

29.06.2007, 12:17 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
shck
Administrator




Dabei seit: September 2003
Herkunft: Burg
Beiträge: 526
Antwort mit Zitat Nach weiteren Beiträgen von shck suchen Diesen Beitrag einem Moderator melden

hänge mal die xpo der letzte 4 tage vom fdax an, ich schau mir das dann mal an.

29.06.2007, 17:25 shck ist offline Profil von shck Füge shck deiner Freunde-Liste hinzu Email an shck senden Homepage von shck
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

Prima. Ich schicke Sie Dir gerade per Mail.

Bis dann!

29.06.2007, 20:07 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
shck
Administrator




Dabei seit: September 2003
Herkunft: Burg
Beiträge: 526
Antwort mit Zitat Nach weiteren Beiträgen von shck suchen Diesen Beitrag einem Moderator melden

also, bei deiner xpo fehlen z.b. für den 25. einige daten:




deswegen wird auch der chart so angezeigt, wie er bei dir abgebildet ist. beim 27. sind die daten vorhanden. der 28. hat bei mir genau die gleichen fehlenden daten wie beim 25./26., mein vorschlag, statt den DAX-Future als 'Category - Future' lieber als 'Index' zu erstellen. damit löst man eine menge probleme in der ts 2000i in bezug auf volumen!

für esignal als datenanbieter habe ich bereits im jahr 2004 die optimalen einstellungen gepostet: GlobalServer Einstellungen & SymbolNamen!

30.06.2007, 10:29 shck ist offline Profil von shck Füge shck deiner Freunde-Liste hinzu Email an shck senden Homepage von shck
select
Mitglied



Dabei seit: März 2007
Beiträge: 33
Antwort mit Zitat Nach weiteren Beiträgen von select suchen Diesen Beitrag einem Moderator melden

Erst einmal wünsche ich allen ein erfolgreiches Jahr 2008!

Ich möchte eine Auswertung für bestimmte Jahre durchführen. Im Dow Jones sollen von 9 Achterjahren "nur" zwei negativ gewesen sein. Nun haben wir das Jahr 2008. Nun wollen wir überprüfen, ob bei einem negativen Januar das Jahr ebenfalls negativ werden könnte.

Jetzt möchte ich nicht jedes Jahr 1958, 1968, 1978 ... usw. einzeln auflisten und dann die G/V des Monats/Jahres ausrechnen. Denn wenn wir andere Jahre o.ä. Ergebnisse auswerten wollen, müssten wir ebenfalls neue Codes schreiben.

Meine Frage: Kann man in EL bestimmten Jahren einen Wert zuweisen?

z.B.

code:

Jahre mit der letzten Zahl "0" = 0;
Jahre mit letzten Zahl "1" = 1;
Jahre mit letzten Zahl "2" = 2;


Man könnte über die Inputs einen Wert eingeben und dann die Auswertungen beginnen.

Danke für Eure Antworten.

Gruß Thomas

05.01.2008, 17:09 select ist offline Profil von select Füge select deiner Freunde-Liste hinzu Email an select senden
[  1  2    »  ]   « Vorheriges Thema | Nächstes Thema »
Neues Thema erstellen Antwort erstellen
Gehe zu:


Powered by: Burning Board 1.2 © 2001-2002 WoltLab GbR