Frage zu CreateFile

Post Reply
trader78
Posts: 14
Joined: 14 Oct 2015 19:05

Frage zu CreateFile

Post by trader78 »

Hallo,

bin gerade dabei, die Funktion CreateFile für mich zu erschließen.

Dazu nutze ich das Beispiel aus dem Funktionen-Handbuch:


*********************************************************************

Express f_CreateFile

Calculation

if (close > high[1]) and (close > high[2]) then

begin

Highlight("slot","lightblue");
CreateFile("C:\NanoLogs\nano-actions.txt", TimeToString(datetime, "%Y-%m-%d %H:%M:%S")
+ " New peak at symbol " + SymbolName());
end

Interpretation
begin
end

*********************************************************************


Das funktioniert insofern, dass die Highlight-Balken für den gesamten geöffneten Chart angezeigt werden.

Allerdings wird der Eintrag in das Log-File nur für die jeweils letzten hinzukommende Periode geschrieben.

Ich möchte aber, dass für alle Kerzen des Charts, die die Bedingung erfüllen, ein Eintrag in der Datei gemacht wird.

Was muss ich dazu ändern?

Viele Grüße

trader78
Pjotrha
Posts: 12
Joined: 30 Aug 2014 19:04

Re: Frage zu CreateFile

Post by Pjotrha »

Hallo trader78,

ich wollte einmal für eine Strategie für jeden Tag den Initial Stoploss (ISL) in eine Datei reingeschrieben haben. CreateFile wird nur für die aktuelle Kerze ausgeführt (also auch nur, wenn es Livedaten gibt, nicht am Wochenende). Ich habe mir mit einer Stringvariable geholfen, die zunächst für zurückliegende Kerzen Informationen gesammelt hat und dann alle Informationen auf einmal in die Create-File-Datei reingeschrieben hat. Auszug (für einen bestimmten Zeitpunkt jeden Tag wird ein Buytrigger und ein Selltrigger bestimmt, ebenso der ISL für Long und der ISL für Short, diesen Berechnungsschritt lasse ich hier der Übersichtlichkeit halber weg; "\n" = Zeilenwechsel):

Vars
String Exportausdruck("Datum; ISL_Long; ISL_Short; "); //= erste Zeile für die Auswertung in Excel

Calculation

...

If timeopen=NumerictoTime($Startzeit) then
begin
Buytrigger = Highest (H, $RangeKerzen);
Selltrigger = Lowest (L, $RangeKerzen);
...
Exportausdruck = Exportausdruck + "\n" + NumericToString(DateToNumeric(date), "") + "; "+
Numerictostring (ISL_Long,"") + "; " + Numerictostring(ISL-Short,"") + "; ";
end

...
Createfile ("C:\Files\EurUsd.txt", Exportausdruck);



Es entstand eine Textdatei, die in Excel importiert werden konnte (dafür die Semikolons als Trennzeichen). Mit diesen Daten habe ich die Backtest-Report-Daten um den ISL ergänzen können und daraus den jeweiligen Gewinn/Verlust in "R", also abhängig vom Risiko bestimmen können. Etwas umständlich (zumal auch das Datum erst noch innerhalb von Excel umgewandelt werden musste), aber eine einfachere Möglichkeit habe ich beim Nanotrader nicht gefunden.

Vielleicht hilft es dir bei der Lösung.

Viele Grüße
Pjotrha
trader78
Posts: 14
Joined: 14 Oct 2015 19:05

Re: Frage zu CreateFile

Post by trader78 »

Danke, das ist auf jeden Fall ein Schritt in die richtige Richtung ... :)

Beste Grüße

trader78
Post Reply

Return to “WHS NANOTRADER - EXPRESS PROGRAMMING”