Dienstag, 16. April 2024, 15:07 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Lieber Besucher, herzlich willkommen bei: INVESTOX-Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

hendrix1

unregistriert

1

Montag, 11. März 2013, 18:47

VBS - Daten wird mehrfach in .txt - file exportiert ... ??

Hallo,
ich versuche gerade Daten durch VBS mit Investox in eine .txt-Datei zu schreiben.
Das klappt soweit ganz gut, allerdings macht Investox das mehrfach, öfter als angewiesen. Hier das Beispiel:

Einfaches VBScript, als Datenreihen wird Close, Tag, Monat, Stunde und Minute ins Script geladen und in eine Datei geschrieben.


Schaut man sich die erzeugte Datei an, fängt Investox wieder von vorne an, wenn die For-Schleife eigentlich abgearbeitet ist.

Investox setzt am 28.12. um 21:25Uhr (LfNr 12024) nicht ab, sondern fängt wieder bei Nr 1 an.
Das ganze macht Investox ca 4 mal, setzt aber immer wieder an einem anderen Zeitpunkt ab.

Kann mir jemand einen Tip geben, wie ich Investox überzeuge die Datei nur einmal zu bearbeiten.
Dem VBS-Code nach sollte nach einem Durchlauf ja Schluss sein.(pro einer Aktualisierung)

Besten Gruss
Hendrix

Ganesha

unregistriert

2

Montag, 11. März 2013, 19:30

Das Script wird bei jeder Aktualisierung ausgeführt. Lösung wäre die Datei bei jeder Ausführung des Scripts zu löschen bzw. (besser) zu leeren.

Was Du vermutlich willst, ist das nur die letzte Periode zugefügt wird. Aber IHMO geht das bei Investox nicht. Jedenfalls nicht so einfach. Du müsstest in der Ausgabedatei prüfen welches die letzte geschriebene Periode ist und dann alle folgenden nachtragen.

Viele Grüße

Lenzelott Männlich

Experte

Registrierungsdatum: 30. Dezember 2002

Beiträge: 3 050

Wohnort: Giessen

3

Dienstag, 12. März 2013, 01:49

Das Script wird bei jeder Aktualisierung ausgeführt. Lösung wäre die Datei bei jeder Ausführung des Scripts zu löschen bzw. (besser) zu leeren.

Was Du vermutlich willst, ist das nur die letzte Periode zugefügt wird. Aber IHMO geht das bei Investox nicht. Jedenfalls nicht so einfach. Du müsstest in der Ausgabedatei prüfen welches die letzte geschriebene Periode ist und dann alle folgenden nachtragen.

Viele Grüße


oder Du merkst Dir im GlobalData bis wohin Du bereits exportiert hast.
Das dürfte die performantere Lösung sein.
If you think it´s expensive to hire a professional, wait until you hire an amateur.

hendrix1

unregistriert

4

Dienstag, 12. März 2013, 22:39

Hallo Ganesha und Lenzelott,
danke für eure schnellen Antworten.

Allerdings ist das Problem, dass Investox diesen "mehrfach-Export" macht, obwohl
1). automatische Aktualisierung AUS ist
2). ein evtl. bestehener txt-File vorher definitiv gelöscht wird
3). ich lasse Einmal! manuell aktualisieren

Daher knabber ich zur Zeit an dem Problem herum, dass Investox immer bis irgendwo exportiert ( mindestens schafft IVX die For-Schleife dreimal durch und setzt dann im vierten Durchlauf irgendwann ab - immer zu einer anderen LfNR )

Dabei dachte ich eigentlich, dass o.g. Vorgehensweise und relativ eng gestrickter VBS-Code kaum Spielraum zur Toleranz gibt.

Der oben angegeben VBS-Code steht im Bereich Definitionen. Ist denn mein Grundverständnis richtig, dass Investox bei EINER Aktualisierung diesen Code exakt einmal "ab-arbeitet" ? Oder wird dieser Bereich wiederholend öfter durchgearbeitet, wenn genug "Zeit" ist?

Danke und Gruss
Hendrix

Ganesha

unregistriert

5

Mittwoch, 13. März 2013, 10:19

Der oben angegeben VBS-Code steht im Bereich Definitionen. Ist denn mein Grundverständnis richtig, dass Investox bei EINER Aktualisierung diesen Code exakt einmal "ab-arbeitet" ? Oder wird dieser Bereich wiederholend öfter durchgearbeitet, wenn genug "Zeit" ist?
Die Annahme ist offensichtlich falsch. :)

Warum das so ist, kann nur Herr Knöpfel beantworten. Aus dem Bauch heraus würde ich aber sagen, dass Investox die Aktualisierung bei jeder Chartveränderung durchführt. Also etwa wenn Du mal eben das Handelssystem in einem Projekt wechselst, in einen anderen Bereich reinzoomst und ähnliches.

W.D.a Pisa

unregistriert

6

Donnerstag, 14. März 2013, 01:19

Die Annahme ist offensichtlich falsch. :)


...kann ich von meiner Seite ebenfalls bestätigen, teils hatte ich auch das Erlebnis, dass global Vars auf die ich zugreifen wollte kurzfristig gar nicht vorhanden waren kurze Zeit später plötzlich wieder erschienen sind.. die Frage, die für mich dann entstand war "Wann stößt Investox interne Berechnungen an?"

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

7

Donnerstag, 14. März 2013, 12:17

Die Aufgabenstellung hier scheint mir weltfremd. Zumindest theoretisch.
als Datenreihen wird Close, Tag, Monat, Stunde und Minute ins Script geladen und in eine Datei geschrieben.

Diese Daten kannst Du ja pragmatisch gesehen auch direkt aus der Quelle lesen und verarbeiten, warum der Umweg über Investox, Textdatei in dessen Aktualisierungs-Zyklen schreiben usw. ? Warum einfach, wenn's auch kompliziert geht, oder was?

Vielleicht kannst Du sagen, was Du eigentlich machen willst. Vielleicht gibt es dafür auch eine pragmatische Lösung.
Gruss
Bernd

Ganesha

unregistriert

8

Donnerstag, 14. März 2013, 15:03

Die Aufgabenstellung hier scheint mir weltfremd.
Hallo,

für mich nicht. Ich hatte mich auch schon mal an einem solchen Export versucht, Idee war es Investox Daten sammeln zu lassen, ein paar Berechnungen machen und das ganze dann zu einem Dataminingtool zu schupsen.

Viele Grüße

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

9

Freitag, 15. März 2013, 09:53

Dann hat ja Lenzelott weiter oben den Weg über das globale Memory aufgezeigt.

Wenn ich mir das programmieren wöllte, würde ich mir einen Indikator basteln, der unter einen Key "Indikatorname / Projekt / Handelssystem / Titel / Filename" die letzte exportierte Periode im gloalem Memory ablegt und WAHR zurückgibt, wenn es jetzt eine neue Periode ist. Bei WAHR würde ich die gewünschten Daten als neue Zeile ins betreffende File appenden. Fertig ist der Lack nach einer Stunde Arbeit statt rumzujammern.

Seid so nett, und stellt diesen Indikator in die Forums-Datenbank, wenn er fertig programmiert ist 8) Danke.
Gruss
Bernd

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Bernd« (15. März 2013, 10:00)


Ganesha

unregistriert

10

Freitag, 15. März 2013, 12:21

Seid so nett, und stellt diesen Indikator in die Forums-Datenbank, wenn er fertig programmiert ist 8) Danke.
Ich für mich habe damals aufgegeben, weil IHMO der gesamte Ansatz falsch ist. Also ich rede jetzt für mich, Hendrix hat sich ja noch nicht geäußert. :)

Besser ist der Ansatz den das leider verflossene(?) ADMG-Projekt verfolgt hat: Die Daten über eine Luftschnittstelle, also TCP bzw. Socket, an ein externes System zu übergeben. Noch besser wäre IMO der umgekehrte Weg. Direkt auf die RTT-Dateien zugreifen, mit einem magischen Tool wie ADMG oder Mathematica die Berechnungen durchführen und dann die Signale an Investox übergeben. Die Signalübergabe an Investox kommt mit minimalen Dateigrößen aus und könnte wieder über RTT-Dateien laufen.

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

11

Freitag, 15. März 2013, 12:57

Diese Daten kannst Du ja pragmatisch gesehen auch direkt aus der Quelle lesen und verarbeiten,


Zitat von »Bernd«
Die Aufgabenstellung hier scheint mir weltfremd.

Hallo,

für mich nicht. Ich hatte mich auch schon mal an einem solchen Export versucht,


Noch besser wäre IMO der umgekehrte Weg. Direkt auf die RTT-Dateien zugreifen

Was meinst Du, was ich mit "direkt aus der Quelle lesen" wohl gemeint habe. Am Ende sind wir jetzt also der gleichen Meinung: direkt auf die RTT Dateien zugreifen, Du bist also zum selben Schluss gekommen.
Gruss
Bernd

Ganesha

unregistriert

12

Freitag, 15. März 2013, 13:06

Was meinst Du, was ich mit "direkt aus der Quelle lesen" wohl gemeint habe. Am Ende sind wir jetzt also der gleichen Meinung: direkt auf die RTT Dateien zugreifen, Du bist also zum selben Schluss gekommen.
Ich zitiere mal aus Deinem letztem Posting im MT-Thread:

Zitat

Verstehe, so fängt jeder an in diesen Tagen der Terrabyte Platten und Gibabit Internet. Es hat ja keine Not
:D

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

13

Freitag, 15. März 2013, 13:11

:D
Gruss
Bernd

hendrix1

unregistriert

14

Sonntag, 17. März 2013, 10:16

Hallo zusammen,
entschuldigt die Verzögerung - hatte leider die letzten Tage keinen Zugriff auf einen Internetzugang.

Natürlich - Bernd - brauche ich den Zugriff "leider" so wie oben beschrieben habe, daher ist es nicht besonders weltfremd.

Investox soll verschieden Daten in eine Textdatei exportieren, um diese dann extern greifbar zu machen. Begonnen habe ich damit, einfach mal einen Close-Kurs schreiben zu lassen. Final sollen komplexere Datenstrukturen wie Kursmuster "raus"-geschrieben werden.

Da ich diese Datei nicht in echtzeit immer verfügbar halten muss, sondern nur einmal kurz vor einer Optimierung brauche - habe ich das VBS-Beispiel aus der Investoxhilfe umgebaut.
Ergebnis war wie oben beschrieben die Mehrfachausgabe. Folglich habe ich hier fragen wollen, ob es irgendwo eine mir noch unbekannte Stellschraube gibt, die Einfluss auf diesen Themenbereich haben könnte und das Problem einfach abstellt.

Die Idee, pro neuer Periode mit einen weiteren Eintrag zu exportieren - statt immer einen kompletten Durchlauf zu starten - werde ich heute Abend ausprobieren.
Danke für den Hinweis.

Gruss
Hendrik