hilfe für mein 1. grösseres script

  • hier mal das bis jetzt getippte:


    soweit, sogut. zur erklärung, beim kopiervorgang wird der aktuelle dax-stand in den notepad geschrieben
    ziel dieses scriptes wird sein das:

    1. alle ~30 sec der dax-stand "aufgezeichnet" wird

    2. das script die bisherigen zahlen vergleicht. zb:das die zahlen in den letzten minuten immer kleiner/grösser wurden, etc.

    3. wenn gewisse ereignisse eintreffen automatisch gehandelt wird. zb: seit fünf min. fallen die kurse, "setzte" auf weiter fallende kurse.

    4. eine sogenannte "stop-loss" funktion. zb: seit 2min oder 5 punkten etc. gehts in die "falsche" richtung, automatischer verkauf der position.

    5. das jede kauf/verkauf aktion in den notepad eingetragen wird. zb:
    5850 12:20:17 uhr kauf steigende kurse
    5862 12:35:22 uhr verkauf steigende kurse

    punkt 1 ist soweit fertig(sagen wir- es funktioniert so)
    bei den restlichen punkten könnt ich hilfe brauchen, wie sowas am besten(leichtesten) gemacht wird. bin für alle ideen offen und würd mich sehr über hilfe freuen.

    mfg oernzz

    €:irgendwie funktioniert die quellcode eingabe bei mir nich richtig... muss der komplette code von hand nochmals eingegeben werden? copy+paste funkt nicht ?(

    [EDIT Gun-Food]Hab den Code mal eingefügt. Einfach auf den Code Button drücken, ein Zeichen eingeben und dann auf okay. An der Stelle wo das Zeichen von eben steht, dann deinen Code einfügen.[/EDIT]

    €:alles klar,danke!

    noob aus erfahrung

    5 Mal editiert, zuletzt von oernzz (21. März 2006 um 18:30)

  • jo wär klasse, leider hab ich kein mikro oda was ähnliches d.h. die konversation würde doch etwas einseitig ablaufen ;)

    vielleicht kann ich aber die ganzen punkte auseinander "dividieren". hab mir gedacht (für punkt2)
    müsste ich eigentlich "nur(?!?)" jeder kopierten zahl, eine eigene $var automatisch zuweisen lassen.wenn das ginge wär schon vieles erreicht. danach müsste nur noch n paar if befehle gemacht werden zb:var1 kleiner als var2, var2 kleiner als var3, var3 kleiner als var4, var4 kleiner als war5 -->dann kauf einer short (fallende kurse) position.
    eine andere möglichkeit würde meiner meinung nach auch gehen: man müsste die jeweiligen zeilen im notepad einzeln deklarieren. danach wieder die if befehle: wenn die 1te zeile kleiner ist als die 2te, die 2te kleiner als die 3te...etc
    wie ich das aber nun proggen soll weiß ich nicht :(

    die anderen punkte sind erstma nicht so wichtig


    mfg oernzz

    noob aus erfahrung

  • peethebee :
    wird schon gemacht...

    nur wie kann ich in diesem array angeben das die jeweils x letzten zahlen miteinander verglichen werden?
    vielleicht kannst du mir die befehle nennen die ich dazu brauche?

    @gta spider:
    habs mir schon runtergezogen;) ist sehr nützlich!

    mfg oernzz

    noob aus erfahrung

    Einmal editiert, zuletzt von oernzz (21. März 2006 um 21:34)

  • also hab da mal ne neue idee getestet. basiert darauf das ab jetzt nicht mehr in die nächste zeile vom notepad kopiert wird sondern immer in die 1te. danach wird diese zeile "runtergefahren" dann die zeit reingeschrieben, dann wieder "runterfahren". das klappt aber hier sollte dann:

    einschalten...ja sollte, irgendetwas ist hier mehr als nur faul. wär sehr froh wenn mich da mal jemand aufklären könnte!

    mfg oernzz

    noob aus erfahrung

    2 Mal editiert, zuletzt von oernzz (21. März 2006 um 23:33)

    • Offizieller Beitrag

    Hallo!

    oernzz:

    Du kannst nicht aus einem Notepad-Fenster mittels FileReadLine lesen.
    Dazu musst du eine Datei öffenn (was nicht bedeutet, dass sie angezeigt wird). Befehle dazu FileOpen, FileReadLine, FileClose. Das folgende Beispiel ist der Hilfe entnommen und sehr nützlich. Muss man einfach nur den Pfad anpassen und es so einrichten, dass die gewünschten Werte ausgelesen werden:

    peethebee

  • hi!

    jo danke! habs inzwischen gefunden. bin nun fast fertig, ein problem ist aber noch. das das "vergleichsprogramm" funktioniert muss ich diese txt immer nach dem vorgang schliesen. nur beim kopiervorgang macht er die datei nicht mehr auf ?(

    ich hab dazu den filopen befehl genutzt, danach kommt n winwaitactive. die pfadangabe ist 100% richtig.

    Code
    FileOpen("C:\Dokumente und Einstellungen\Administrator\Desktop\clickoption\dax-stand\file.txt", 1)

    warum öffnet er nicht? hab schon versucht die txt datei einfach umzubenennen, das funkt auch nicht...man echt, ich hab mich echt gefreut als das andere gefunkt hat. nun scheitert das ganze projekt daran das mein script keine txt datei aufmachen kann, ich könnt heulen...

    mfg oernzz

    noob aus erfahrung

    • Offizieller Beitrag

    Hallo!

    Eine Datei zum Lesen zu öffnen ist etwas anderes, als sie in Notepad zu laden und anzuzeigen.
    Deshalb zeigt FileOpen auch kein sichtbares Resultat. Intern allerdings ist die Datei geöffent und die kannst aus ihr mit FileRead(Line) Text lesen.
    Der Vorteil ist, dass du kein NOtepad auf machen mussst, sondern DIREKT aus der Datei lesen kannst.

    peethebee

  • aso, dann hab ich etz n anderes problem. ich kann nur in ein geöffnetes aktives fenster kopieren.
    mit "run" kann ich keine txt datei öffnen...mit filopen auch nicht, wie dann?


    mfg oernzz


    €: moment ich glaub etz hab ichs, run notepad danach strg+o dann das verzeichnis rein und enter...
    ich teste!

    noob aus erfahrung

    Einmal editiert, zuletzt von oernzz (22. März 2006 um 15:54)

  • *gröhl*

    HAT GEKLAPPT!!!

    das programm läuft tadellos, er öffnet die seite, wählt den index, startet unterprogramm(das kopiert), danach startet das "unter-unterprogramm" welches dann die zahlen miteinander vergleicht. falls entsprechende bedinungen erfüllt werden schreibt er (momentan nur) eine meldung in den txt in welche richtung er eingestiegen ist. ich werd dann noch n paar "unter-unter-unterprogramme" schreiben (wirklicher kauf einer position und dann noch ein "stop-loss" programm)
    aber jetzt bin ich stolz das ich das gepackt hab. ich möcht mich HERZLICHST bei allen und besonders bei PeetheBee bedanken. ohne eure hilfe wär ich nicht dort wo ich etz bin.
    i hia so a gaude, i künnt dia ganze wealt abknutschn...
    (sorry das musste sein :)

    mfg oernzz

    noob aus erfahrung

  • ach so ja gerne:

    das hauptpogramm:

    das "kopierprogramm":

    und dann noch den vergleicher:


    wie man sieht hab ich auch etwas aus den vorlagen rauskopiert. tja wieso selber schreiben wenns andere schon gemacht haben :)
    schicken möcht ichs nicht, da ja benutzername und pw auch drin ist. sorry, aber hab da ziemlich viel geld drauf...

    mfg oernzz

    €:hab noch n kleinen schönheitsfehler gefunden, ist schon beseitigt!

    €2:nein! hab noch n fehler gefunden...der vergleicher sollte eigentlich nur ne meldung schreiben wenn
    a: die 1te zahl kleiner ist als die 2te und die 2te kleiner ist als die 3te
    b: die 1te grösser als die 2te und die 2te grösser als die 3te
    ist. macht er aber nicht, im reichts wenn bei a die 1te kleiner als die 3te ist und bei b die 1te grösser als die 3te ist. naja dann kommt jetzt die "bug-beseitigung"!
    für ideen bin ich immer offen :)

    noob aus erfahrung

    4 Mal editiert, zuletzt von oernzz (23. März 2006 um 19:04)

  • also, ich hab mich entschlossen den "vergleicher" neu zu schreiben. da ja leider nicht, die zahlen nacheinander geprüft werden.ich dachte da an select..case befehle.
    so in der richtung: falls die erste zahl kleiner ist als die zweite, und falls die 2te kleiner is als die 3te dann...
    das problem ist, sobald der erste case wahr ist wird nicht mehr weiter "gecased". die if..ifelse..else befehle helfen da leider auch nicht weiter.
    was tun sprach zeus? falls jemand ne idee hat, bitte bin froh wenn man mir auf die sprünge hilft.

    mfg oernzz

    noob aus erfahrung

    • Offizieller Beitrag

    Hallo!

    Grundsätzlich ist es schlecht, die Funktionen in drei Programme zu packen. Mach einfach an der Stelle, an der die RunWaits jeweils stehen, den Quelltext aus den Dateien rein. Dann hast du nachher 1 Skript, in dem alles drin ist.

    Wegen der Funktion: Habe jetzt gerade keine Zeit, eine zu schreiben, vielleicht im Laufe des Nachmittage. Meine Idee wäre, eine rekursive Funktion zu schreiben, der man ein Array und die Anzahl der zu prüfenden Elemente übergibt. Wenn zwei nicht die Voraussetzungen erfüllen, wird abgebrochen, ansonsten die Funktion "rekursiv" erneut aufgerufen.

    peethebee

    • Offizieller Beitrag

    Hallo!

    Hier mal eine "Trend"-Funtktion, die ich mal schnell geschrieben habe:

    Ist gleich mal mit Beispiel...

    peethebee

  • hi!

    ich sag ma fett merci, für die trend funktion!
    hab mein oben angedeutetes problem inzwischen gelöst, auch hab ich inzwischen n stop loss beim vergleicher eingebaut.(hab das alte mit dem neuen ersetzt)
    wegen denn 3 programmen, irgendwie find ichs angenemmer 3 kleine progs zu "behandeln" als 1 grosses...da ich noch sehr viel vor habe (gui machen, bestimmte zielmarken von vornherein zu deklarieren, max. handelsvorgänge, usw. usf.) ist noch massig arbeit zu erledigen. in jedem fall nochmals grossen dank, ist echt super wenn man als noob so freundlich und kompetent beraten wird.

    ps: ich hab natürlich für dieses forum gestimmt :D

    mfg oernzz

    noob aus erfahrung