Abenteuer eines Neulings - Seite 2

 
cloudbreaker:

Um Ihre Frage zu beantworten: Normalerweise arbeite ich als Hubschrauberpilot. Angesichts der wirtschaftlichen Lage will das Unternehmen, für das ich arbeite, im Moment jedoch nicht fliegen. In der Zwischenzeit entwickle ich also EAs für ein Unternehmen, das meinem besten Freund gehört. Wir handeln live im Auftrag einiger ziemlich bekannter Fonds.

Ich freue mich, dass Sie versuchen, das Programmieren zu lernen, und werde Ihnen helfen, wo immer ich kann. Es ist erfrischend zu sehen, dass jemand dem Forum beitritt und lernen will, sich selbst zu versorgen.

Hallo Wolkenbrecher. Wow, da bin ich ja in diesem Forum gut aufgehoben!


Mein Traum ist es, auch einen Fonds zu betreiben, aber einen großen Teil des Gewinns für die Bewusstseinsforschung und andere positive Projekte zu spenden. Deshalb muss ich mql lernen.


Fliegende Hubschrauber - man thats awsome!!!

 

Niko


Unausgewogene Klammern und geschweifte Klammern an der falschen Stelle können ein Problem darstellen. Eine Sache, die mir geholfen hat, diese Art von Fehlern zu beseitigen/finden, ist die Verwendung eines C++-freundlichen Texteditors.


Ich erstelle meinen gesamten Code mit dem Texteditor Notepad++ (Freeware bei Download.com). Er verfügt über spezielle Funktionen zur Hervorhebung von passenden Klammern, passenden geschweiften Klammern usw. sowie zur farblichen Hervorhebung von Text, damit Sie Ihren Code übersichtlich halten können. (Stellen Sie sicher, dass Sie "C++" aus dem Dropdown-Menü unter "Sprache" auswählen)


Ich habe Ihr Problem gelöst, indem ich Ihren Code in Notpad++ eingefügt habe und die falsch gesetzte Klammer gefunden habe, die verhindert hat, dass Ihr BUY-Code funktioniert.


Vielen Dank

 
FXtrader2008:

Niko


Unausgewogene Klammern und Klammern an der falschen Stelle können ein Problem darstellen. Eine Sache, die mir geholfen hat, diese Art von Fehlern zu beseitigen/finden, ist die Verwendung eines C++-freundlichen Texteditors.


Ich erstelle meinen gesamten Code mit dem Texteditor Notepad++ (Freeware bei Download.com). Er verfügt über spezielle Funktionen zur Hervorhebung von passenden Klammern, passenden geschweiften Klammern usw. sowie zur farblichen Hervorhebung von Text, damit Sie Ihren Code übersichtlich halten können. (Stellen Sie sicher, dass Sie "C++" aus dem Dropdown-Menü unter "Sprache" auswählen)


Ich habe dein Problem gelöst, indem ich deinen Code in Notpad++ eingefügt habe und die falsch gesetzte Klammer gefunden habe, die verhindert hat, dass dein BUY-Code funktioniert.


Prost




Hallo fxtrader! Du kommst genau zur rechten Zeit, denn ich habe gerade eine Stunde damit verbracht, die Sache mit den fehlplatzierten Klammern herauszufinden. Ich werde das Notepad++ herunterladen. Das große Problem im Moment ist für mich, herauszufinden, wie ich die beiden Code-Blöcke parallel laufen lassen kann. Ich habe mit if(OrdersTotal()==0) herumgespielt (machte es ==0 || 1, haha, was ein lustiges Ergebnis hatte, aber das hat das Problem nicht gelöst). Keine Sorge, geben Sie mir die Antwort noch nicht, ich werde versuchen, es selbst herauszufinden :)


Handeln Sie für sich selbst oder sind Sie eher ein Programmierer?

 
cloudbreaker:

Um Ihre Frage zu beantworten: Normalerweise arbeite ich als Hubschrauberpilot. Angesichts der wirtschaftlichen Lage will das Unternehmen, für das ich arbeite, im Moment jedoch nicht fliegen. In der Zwischenzeit entwickle ich also EAs für ein Unternehmen, das meinem besten Freund gehört. Wir handeln live im Auftrag einiger ziemlich bekannter Fonds.

Ich freue mich, dass Sie versuchen, das Programmieren zu lernen, und werde Ihnen helfen, wo immer ich kann. Es ist erfrischend, jemanden zu finden, der dem Forum beitritt und lernen will, sich selbst zu versorgen.

Kein Wunder, dass dein Spitzname Cloudbreaker ist, du bist ja auch Pilot. Ich dachte, du bist ein Programmierer und der Spitzname hat etwas mit dem größten Hype des Jahres 2009 zu tun - Cloud Computing. :)

 
FXtrader2008:

Niko


Unausgewogene Klammern und Klammern an der falschen Stelle können ein Problem darstellen. Eine Sache, die mir geholfen hat, diese Art von Fehlern zu beseitigen/finden, ist die Verwendung eines C++-freundlichen Texteditors.


Ich erstelle meinen gesamten Code mit dem Texteditor Notepad++ (Freeware bei Download.com). Er verfügt über spezielle Funktionen zur Hervorhebung von passenden Klammern, passenden geschweiften Klammern usw. sowie zur farblichen Hervorhebung von Text, damit Sie Ihren Code übersichtlich halten können. (Stellen Sie sicher, dass Sie "C++" aus dem Dropdown-Menü unter "Sprache" auswählen)


Ich habe Ihr Problem gelöst, indem ich Ihren Code in Notpad++ eingefügt habe und die falsch gesetzte Klammer gefunden habe, die verhindert hat, dass Ihr BUY-Code funktioniert.


Vielen Dank




Allen anderen, die einen syntaktischen Editor benötigen, aber einen Apple Mac benutzen, kann ich Smultron empfehlen. Wenn Sie mit dem Mauszeiger über eine geschweifte Klammer fahren, wird deren Gegenstück für Sie hervorgehoben.

 
niko:

Hallo fxtrader! Du kommst genau zur rechten Zeit, denn ich habe gerade eine Stunde damit verbracht, die ganze Sache mit den fehlplatzierten Klammern herauszufinden. Ich werde das Notepad++ herunterladen. Das große Problem im Moment ist für mich, herauszufinden, wie ich die beiden Code-Blöcke parallel laufen lassen kann. Ich habe mit if(OrdersTotal()==0) herumgespielt (habe es ==0 || 1 gemacht, haha, was ein lustiges Ergebnis hatte, aber das hat das Problem nicht gelöst). Keine Sorge, gib mir noch nicht die Antwort, ich werde versuchen, es selbst herauszufinden :)


Handeln Sie für sich selbst, oder sind Sie eher ein Programmierer?

Du bist auf dem Holzweg, wenn du versuchst, die Code-Blöcke parallel laufen zu lassen.

Wenn ich mich an Ihr spezielles Problem erinnere, sollten Sie eine Schleife durch alle offenen Aufträge ziehen und in Ihren eigenen Variablen zählen, wie viele von jedem Typ (Kauf und Verkauf) Sie haben. In diesem Fall werden Sie OrdersTotal() nur als Schleifenindex verwenden.

 
cloudbreaker:

Sie sind auf dem Holzweg, wenn Sie versuchen, die Code-Blöcke parallel laufen zu lassen.

Wenn ich mich an Ihr spezielles Problem erinnere, denke ich, dass Sie eine Schleife durch alle offenen Aufträge machen und in Ihren eigenen Variablen zählen sollten, wie viele von jedem Typ (Kauf und Verkauf) Sie haben, und dann Ihre bedingten Anweisungen auf das Ergebnis stützen. In diesem Fall werden Sie OrdersTotal() nur als Schleifenindex verwenden.

Nico, wenn Ihnen dieser Beitrag etwas kryptisch vorkommt, lassen Sie es mich bitte wissen, und ich werde versuchen, es weiter zu erklären.

Es gibt zwei getrennte Listen - eine mit aktuellen Aufträgen und die andere mit abgeschlossenen Aufträgen.

Wenn Sie wissen wollen, wie viele aktuelle Aufträge eines bestimmten Typs es gibt, müssen Sie jeden Auftrag in der Liste der aktuellen Aufträge auswählen, herausfinden, um welche Art von Auftrag es sich handelt, den entsprechenden Zähler erhöhen und zum nächsten Auftrag übergehen.

Ich hoffe, das hilft Ihnen.


CB

 
cloudbreaker:

Nico, wenn Sie diesen Beitrag etwas kryptisch fanden, lassen Sie es mich bitte wissen, und ich werde versuchen, ihn weiter zu erklären.

Es gibt zwei getrennte Listen - eine mit aktuellen Aufträgen und die andere mit abgeschlossenen Aufträgen.

Wenn Sie wissen wollen, wie viele aktuelle Aufträge eines bestimmten Typs es gibt, müssen Sie jeden Auftrag in der Liste der aktuellen Aufträge auswählen, herausfinden, um welche Art von Auftrag es sich handelt, den entsprechenden Zähler erhöhen und zum nächsten Auftrag übergehen.

Ich hoffe, das hilft Ihnen.


CB

Hallo Fliegendes Auge!


Ja, genau. Ich überlege gerade, wie ich mein Lernen besser organisieren kann, damit es schneller geht, denn ich fühle mich wie ein Ziegelstein, der fliegen lernen will....hmmmm....


Ich denke, dass 2 Dinge wesentlich sind:

1. Ich werde noch einmal die Codeguru-Tutorials durchgehen, heute Abend ist ein guter Zeitpunkt dafür (gibt es auch anderes Lernmaterial, das ihr empfehlen könnt?)

2. Ich werde viel Hilfe von Ihnen und anderen Programmierern brauchen, wenn es um die kleinsten Punkte in der Codierung geht (selbst so dumme Dinge wie die Frage, warum () nach 'return' kommen muss und solche Dinge. Ich hatte Bedenken, weil ich dachte, ich würde euch mit diesen Fragen nerven, aber wenn ihr mir grünes Licht gebt, werde ich anfangen, wirklich zu fragen und schneller vorankommen! Dann kann dieser Thread auch zu einer Lernreise für andere Neulinge werden.


Also was meint ihr?

Übrigens, hast du einen eigenen Hubschrauber? Ich habe vor ein paar Monaten einen auf ebay für 800.000 Dollar gesehen, ein sehr schöner, ein Unternehmer hat ihn verkauft. Ich will mir irgendwann mal einen kaufen :)

 
niko:

Hallo Fliegendes Auge!


Ja, genau. Ich überlege gerade, wie ich mein Lernen besser organisieren kann, damit es schneller geht, denn ich fühle mich wie ein Ziegelstein, der fliegen lernen will....hmmmm....


Ich denke, dass 2 Dinge wesentlich sind:

1. Ich werde noch einmal die Codeguru-Tutorials durchgehen, heute Abend ist ein guter Zeitpunkt dafür (gibt es auch anderes Lernmaterial, das Sie empfehlen können?)

2. Ich werde viel Hilfe von Ihnen und anderen Programmierern brauchen, wenn es um die kleinsten Punkte in der Codierung geht (selbst so dumme Dinge wie die Frage, warum () nach 'return' kommen muss und solche Dinge. Ich hatte Bedenken, weil ich dachte, ich würde euch mit diesen Fragen nerven, aber wenn ihr mir grünes Licht gebt, werde ich anfangen, wirklich zu fragen und schneller vorankommen! Dann kann dieser Thread auch zu einer Lernreise für andere Neulinge werden.


Also was meint ihr?

Übrigens, hast du einen eigenen Hubschrauber? Ich habe vor ein paar Monaten einen auf ebay für 800.000 Dollar gesehen, ein sehr schöner, ein Unternehmer hat ihn verkauft. Ich will mir irgendwann mal einen kaufen :)

Die Klammern sind erforderlich, weil "return()" eine eigene Funktion ist und wie andere Funktionen auch einen Eingabeparameter hat. In diesem Fall besteht der Zweck der Return-Funktion darin, die aktuelle Funktion an dem Punkt in der Logik zu beenden, von dem aus die aktuelle Funktion aufgerufen wurde. Der Eingabeparameter in den Klammern ist der Wert, der an die aufrufende Logik zurückgegeben werden soll. Nehmen wir also an, Sie haben eine eigene Funktion, deren Zweck es ist, die Anzahl der Kaufaufträge, die Sie haben, an die Logik der start()-Funktion zurückzugeben, von der aus Sie sie aufgerufen haben.

In diesem Fall deklarieren Sie Ihre Funktion als int (weil sie eine ganze Zahl zurückgibt) wie folgt:

int MyBuyOrderCounter()

Sobald Sie in dieser Funktion die Anzahl der Kaufaufträge (x) ermittelt haben, rufen Sie die Funktion return() wie folgt auf

return(x);

Und die Logik, die Ihre Funktion innerhalb der start()-Funktion aufruft, könnte wie folgt aussehen

int NumberOfBuyOrders = MyBuyOrderCounter();


Zum Glück besitze ich kein eigenes Flugzeug, sondern arbeite als Berufspilot in einer EC 155.


CB

 
cloudbreaker:

Die Klammern sind erforderlich, weil "return()" eine eigene Funktion ist und genau wie andere Funktionen einen Eingabeparameter hat. In diesem Fall besteht der Zweck der Return-Funktion darin, die aktuelle Funktion an dem Punkt in der Logik zu beenden, von dem aus die aktuelle Funktion aufgerufen wurde. Und der Eingabeparameter in den Klammern ist der Wert, der an die aufrufende Logik zurückgegeben werden soll. Nehmen wir also an, Sie haben eine eigene Funktion, deren Zweck es ist, die Anzahl der Kaufaufträge, die Sie haben, an die Logik der start()-Funktion zurückzugeben, von der aus Sie sie aufgerufen haben.

In diesem Fall deklarieren Sie Ihre Funktion als int (weil sie eine ganze Zahl zurückgibt) wie folgt:

int MyBuyOrderCounter()

Sobald Sie in dieser Funktion die Anzahl der Kaufaufträge (x) ermittelt haben, rufen Sie die Funktion return() wie folgt auf

return(x);

Und die Logik, die Ihre Funktion innerhalb der start()-Funktion aufruft, könnte wie folgt aussehen

int NumberOfBuyOrders = MyBuyOrderCounter();


Zum Glück besitze ich kein eigenes Flugzeug, sondern arbeite als Berufspilot in einer EC 155.


CB



Vielen Dank, Wolkenbrecher! Das fängt an, ein bisschen mehr Spaß zu machen, ich wusste nicht, dass man eine Funktion innerhalb eines Returns aufrufen kann (auch wenn es wahrscheinlich im mql-Buch steht, wie alles andere theoretisch auch). Schöner Hubschrauber EC 155! Warum 'zum Glück', willst du nicht deinen eigenen Hubschrauber?

Grund der Beschwerde: