Ich habe eine Handelsanwendung in WPF erstellt. Für die ich mich für seinen schäbigen Blick schäme, da er nicht beeindruckend ist. Ich möchte jetzt die Benutzeroberfläche für meine Anwendung neu zu gestalten, und machen es ähnlich wie ein Beispiel Screenshot einer Handels-Anwendung Kann jemand bitte Ratschläge, was Pfad sollte ich folgen, um eine Benutzeroberfläche von ähnlicher Art, zB. Wenn es eine Open-Source-C WPF-Anwendung, die einen ähnlichen Look and Feel hat, das wäre großartig. Oder wenn es eine Bibliothek mit coolen Listenansicht, Bildlaufleiste und Fortschrittsbalken gibt. PS: Ich habe kein Microsoft-Mischpult Sie können es als Vorschlag nicht eine Antwort genau nennen. Aber die Entsendung für diejenigen, die neu sind, um WPF und Lernen Bildschirmdesign oder Muster. Nach meiner Erfahrung mit WPF kann ich sagen, zuerst bekommen Sie Hände schmutzig lernen, wie verbindlich funktioniert, denn das ist die Basis der WPF. Simpler Weg zu lernen, wie verbindlich funktioniert lernen, wie man Kontrollen mit anderen Kontrollen zu binden. Dann verwenden Sie einfache Klassen und lernen MVVM. Weiter gehen für die Befehlsbindung innerhalb MVVM Perimeter. Halten Sie das Prisma bis zum letzten, denn Sie brauchen ein gutes Verständnis von verbindlichen Mechanismen, Befehle, MVVM und mehr zu verstehen, PRISM. Danach haben Sie eine Vorstellung davon, wie diese Dinge zusammenarbeiten und wird Ihnen helfen, herauszufinden, wie man mit Daten und Bildschirm zusammen spielen und Design schöne Bildschirme. Auch hier keine Antwort auf die obige Frage. Nur Vorschläge für diejenigen, die WPF lernen und landeten hier auf der Suche nach WPF UI-Gestaltung. Beantwortet Ihre Antwort 2016 Stack Exchange, IncDie Back-Testing-Bibliothek für professionelle Trading-Strategie-Entwickler Back-Test ist der Prozess der Prüfung von Handelsstrategien auf historischen Marktdaten zu versuchen, zu simulieren, wie ein Trading-System in der Zukunft durchführen könnte . Back-Tests ist es, Trading-Strategie-Entwicklung, was Forschung und Verbesserung der Qualität für die Gesundheits-und Transportindustrie sind. Wer möchte einen ungetesteten Herzmonitor oder Auto niemand ausprobieren. Gleiches gilt für Finanzhandelsstrategien. Alle Handelsstrategien müssen zurück getestet, optimiert und validiert werden, bevor sie mit echtem Geld leben. Fast jede technische Analyse Trading-Strategie kann getestet werden. Während es stimmt, dass viele Intermediate-Level-Trading-Anwendungen Skriptsprachen, die Trader zu entwickeln und zurück Test-Trading-Strategien ermöglichen können, fanden wir, es gab keine Back-Test-Bibliotheken für fortgeschrittene Handelssystem-Entwickler, die ihre Handelsstrategien in Low-Level-Programmierung zu programmieren Sprachen wie C, C und Java. So entwickelten wir eine Back-Test-Engine für fortgeschrittene Systementwickler. Jetzt können Entwickler Strategien in jeder Programmiersprache erstellen, dann zurück testen und optimieren diese Strategien, um die Leistung zu verbessern. Mit BackTestLib können Entwickler ihre Handelssysteme in C, C, VB. NET, F, R, IronPython oder in einer anderen Sprache testen, indem sie Tick - oder Bar-Daten verwenden. Es spielt keine Rolle, wie Ihr Handelssystem geschrieben wird. Alles was Sie tun müssen, ist eine Liste der Trades zu liefern, und die Back-Test-Bibliothek erledigt den Rest für Sie. BackTestLib kann Ihre Trading-Systemleistung anhand von zwei Dutzend Risikomessungen wie Sharpe Ratio, Calmar Ratio, Sortino Ratio, Maximum Draw Down, Monte Carlo Draw Down, Total PL, Risk to Reward Ratio, dem größten Gewinn, dem größten Verlust, der durchschnittlichen Anzahl der Trades, berechnen / Monat, Trade Logs und vieles mehr. Perfekt für Strategy Optimization Professionelle Händler wissen, dass alle guten Dinge zu einem Ende kommen. Selbst die besten Trading-Systeme fallen schließlich in Verlieren Perioden, die Optimierung oder Handelssystem Ruhestand. Die Gründe variieren, einschließlich Veränderungen der Liquidität, der Volatilität und der zugrunde liegenden Marktdynamik sowie anderer Faktoren. Die BackTestLib gibt Ergebnisse aus, die eine Reihe von Messungen darstellen, die auf der Rentabilität und dem Risiko Ihres Handelssystems basieren, wenn sie mit den Daten getestet werden, mit denen sie geliefert wurde. Code Beispiel // Erzeuge einige simulierte Trades List lt Handel gt Trades new Liste lt Trade gt () trades. Add (neuer Handel (DateTime. Parse (quot1 / 1/2014 9: 30: 45.422 AMquot), SignalType. Buy, 24) ) trades. Add (neue Handels (Datetime. Parse (quot1 / 1/2014 9: 32: 33,891 AMquot), der Signaltyp. ExitLong, 24.09)) trades. Add (neue Handels (Datetime. Parse (quot1 / 1/2014 9: 37: 12,839 AMquot), der Signaltyp. Sell, 24.07)) trades. Add (neue Handels (Datetime. Parse (quot1 / 1/2014 9: 48: 27,488 AMquot), der Signaltyp. exit, 24.19)) trades. Add (neue Handels (Datetime. Parse (quot1 / 1/2014 9: 49: 16,415 AMquot), der Signaltyp. buy, 24)) trades. Add (neue Handels (Datetime. Parse (quot1 / 1/2014 9: 50: 45,512 AMquot), der Signaltyp. exit, 24.09)) trades. Add (neue Handels (Datetime. Parse (quot1 / 1/2014 9: 51: 14,212 AMquot), der Signaltyp. buy, 24.01)) // Führen Sie die Backtest Doppel lastPrice 24.03 BacktestResults Ergebnisse Backtester. Backtest (Trades, lastPrice) // Ausgabe der Ergebnisse Console. WriteLine (quotTotal number of trades: quot. Results. TotalNumberOfTrades) Console. WriteLine (quotAverage Anzahl der Trades pro Monat: quot. Console. WriteLine (quotTotal-Ergebnis: Ergebnis. TotalProfit) Console. WriteLine (quotTotal-Anzahl der gewinnbringenden Geschäfte: quot. Results. NumberOfProfitableTrades) Konsole. WriteLine (quotTotal Anzahl der verlierenden Trades: quot. Results. NumberOfLosingTrades).WriteLine (quotTotal Verlust. quot results. TotalLoss) Console. WriteLine (quotPercent profitable Trades: quot results. PercentProfit.) Console. WriteLine (quotPercent profitable Trades: quot results. PercentProfit.) Console. WriteLine (quotLargest Gewinn. quot Ergebnisse. LargestProfit) Console. WriteLine ("Größter Verlust: Ergebnisse. LargestLoss) Console. WriteLine (" Maximaler Drawdown: Ergebnisse. MaximumDrawDown) Konsole. WriteLine ("Maximaler Drawdown Monte Carlo: Ergebnis. MaximumDrawDownMonteCarlo) Konsole. WriteLine (Standardwertabweichung : Quot; result. StandardDeviation) Konsole. WriteLine (quotStandardabweichung annualisiert: Ergebnis. StandardDeviationAnnualized) Konsole. WriteLine (quotDownside Abweichung (MAR 10): quot. ). Konsole. WriteLine (QuoteValue Added Monthly Index (VAMI): Ergebnis. ValueAddedMonthlyIndex) Konsole. WriteLine (QuoteSharpe-Verhältnis: Resultate. SharpeRatio) Konsole. WriteLine (quotSortino-Verhältnis: Ergebnis. SortinoRatioMAR5) Konsole. Konsole. WriteLine (quotCharrel-Verhältnis: Resultate. CalmarRatio) Konsole. WriteLine (quotRückgewinnungsverhältnis: quotierte Ergebnisse. RiskRewardRatio) // die Handelsprotokoll foreach Anzeige (Handels Handel mit results. Trades) Console. WriteLine (trade. Date quot: quot trade. Signal. ToString () quot auf quot trade. Price. ToString ()) UNIT Modellierung C System 3. Beispiel für ein Handelssystem In diesem Abschnitt werden wir die im vorherigen Abschnitt beschriebenen Schritte durchführen und ein Handelssystem von Grund auf neu aufbauen. Das System in diesem Kapitel wurde für pädagogische Zwecke nur ausgewählt und es ist nur eine der unzähligen Möglichkeiten für Händler heute. Unabhängig von Ihrem Qualifikationsniveau hoffen wir, dass dieser Abschnitt Ihnen ein besseres Verständnis des Prozesses der Systementwicklung vermittelt. Die Beobachtung Die untere Tageskarte zeigt, dass die meisten der täglichen Kerzen unterschiedliche Längen in Bezug auf Pips haben. Wir merken auch, dass sie den hohen oder niedrigen Preis von der vorhergehenden täglichen Kerze die meiste Zeit brechen. Die Größe der Ausbrüche unterscheidet sich von Kerze zu Kerze, aber oft ist der Abstand, den der Wechselkurs von den vorherigen täglichen Extremen abschießt, groß genug, um als Gewinnpotential zu gelten. Die Hypothese Diese Strategie zielt darauf ab, einen Teil einer Breakout-Bewegung zu erfassen, ausgehend vom hohen oder niedrigen Niveau des Vortages. Die Marktbedingungen, die zur Erfassung dieses Ereignisses erfüllt werden sollen, sind: Messung der Hypothese Um das Potenzial des Ausbruchs zu messen. Wir nehmen das GBP / USD Paar für seine Eigenschaften als ein schnell bewegendes Währungspaar, in der Lage, Unterstützung und Widerstandniveaus zu brechen, wenn es an Geschwindigkeit und Impuls gewinnt. Auswählen des Zeitrahmens Obwohl das Ereignis des Ausbruchs in den Tageskarten sichtbar ist. Wählen wir den 1H-Zeitrahmen, um mit der Bewertung der Strategie mit Hilfe von technischen Indikatoren zu beginnen. Einerseits scheint das 4H-Zeitintervall zu hoch zu sein, um die kleineren Ausbrüche zu visualisieren, und andererseits kann jeder Zeitrahmen unterhalb 1H unnötige Signale erzeugen. Die Zeitzone, die zum Testen verwendet wird, ist GMT als standardisierte Zeitzone für den Forex-Markt. Entwicklung der Strategie Folgende Werkzeuge werden verwendet, um die Bedingungen und Regeln der Strategie zu schaffen: Eine Preisbox, um die hohen und die niedrigen Preise des vorherigen Tages zu markieren, wird auf dem 1H-Diagramm angezeigt. Und jeder 24-Stunden-Zeitraum wird mit einer vertikalen Linie markiert, um den Start / das Ende des Tages zu unterscheiden. Eine Kombination aus zwei gleitenden Durchschnitten wird dazu beitragen, die Richtung der zugrunde liegenden Tendenz zu erhalten. Das sind die 21 und die 89 Simple Moving Averages. Zwei Zahlen aus der Fibonacci-Sequenz, die nicht zusammenhängen (8, 13, 21, 34, 55, 89. 144.). Bollinger-Banden, die auf die 21 SMA angewendet werden, werden als Indikator für die Volatilität verwendet. Bollinger Bands enthalten 95 der Schlusskurse. Je höher die Standardabweichung in den Einstellungen verwendet wird, desto mehr schließen die Preise in den Bändern. Da die Breakout-Bewegung mit dem Haupttrend ausgerichtet werden muss. Benötigen wir einen Parameter, der etwas Raum für Preis zu entwickeln gibt. Daher wird die Abweichung anfänglich auf 3 gesetzt. Dieser Indikator wird uns helfen, Handelsausbrüche zu vermeiden, wenn der vorhergehende tägliche Bereich sehr klein gewesen ist und der Markt an Volatilität fehlt. Bollinger Bands und RSI ist ein Webinar von Valeria Bednarik. Hier können Sie zusätzliche Ideen zur Verwendung dieser Indikatoren extrahieren. Einstiegsregeln Um die Prüfung der Strategie zu starten, wird nur ein Handel pro Tag eingenommen. Deshalb müssen wir die Bedingungen für die Ausbreitungsrichtung festlegen: Wenn der Tiefstand eines Tages niedriger ist als am Vortag, wird am darauffolgenden Tag nur noch eine Pause nach unten erfolgen. Die Abwärtsrichtung bleibt unverändert, bis das Hoch eines Tages den Hoch des Vortages überschreitet - von dort werden nur Trades auf den Kopf genommen. Wenn ein bestimmter Tag nicht einen vorigen Tag Preis extreme brechen, bleibt die Richtung der Ausbruch, wie es vorher war. Wenn ein bestimmter Tag den Vortages-hohen UND-niedrigen Preis extremes bricht, wird die Richtung des Ausbruches durch das Ende des Tages bestimmt. Wenn zum Beispiel der Tagesabschluss niedriger als der Vortag ist, ist die Richtung nach unten und umgekehrt. Lange Eintrittsbedingungen sind: Der Tagestag war höher als am Vortag (wie oben erklärt). Die 21 SMA ist über 89 SMA. Die obere Bolliger-Band ist nicht auf den Nachteil in der letzten Kerze vor dem Ausbruch Vertrag. Der Wechselkurs bricht über dem Hoch des Vortags. Passen Sie das Einstiegsniveau auf die vorhergehende Tageshöhe an, um ein Pip hinzuzufügen, und die Ausbreitung nach oben. Zum Beispiel, wenn gestern 39s hoch war 1.6350 und Ihre Spread für die GBP / USD ist 3 pip. Als die Einstiegsstufe ist 1.6354 .. Kurze Einstiegsbedingungen sind: Der Vortages-Tiefstand war niedriger als am Vortag (wie oben erläutert). Die 21 SMA ist unter 89 SMA. Die untere Bolliger-Band zieht sich vor dem Breakout nicht in die letzte Kerze. Short entry trigger ist: Der Wechselkurs bricht unter dem Tief des Vortags. Passen Sie die Einstiegshöhe auf einen Pip weniger als die vorhergehende Tagestiefung nach unten an. Zum Beispiel, wenn yesterday39s niedrig war 1.6300, als das Einstiegsniveau ist 1.6299. Exit Rules Es gibt nur ein Ziel, und dies ist die Fibonacci-Erweiterung 161.8. Die genaue Take-Profit-Bestellung wird ein paar Pips vor der 161,8 Ebene platziert werden. Wenn es eine Runde Zahl näher als 10 Pips auf die 161,8 Ebene, nehmen Sie die Runde Zahl als Ziel. Achten Sie auch darauf, die Ausbreitung auf die Ziel-Ebene auf kurze Trades hinzufügen. Wenn zum Beispiel die Erweiterungsstufe 161.8 auf einem kurzen USD / JPY 90,00 liegt, würde das Ziel bei 90,04 liegen, wenn die Ausbreitung 4 Pips beträgt. Wollen Sie ein Meister mit dem Fibonacci Learn von den Grundlagen zu wahren institutionellen Strategien auf dieser erstaunlichen Tool basiert werden. Sie können Aufnahmen oder lesen Transkripte von Live-Sitzungen gehostet bei FXstreet über Fibonacc i. Die Stop-Loss auf einem langen Handel wird unterhalb der 21 SMA oder der 68,1 Fibonacci Ebene, die immer näher an den Eintrittspreis platziert. Umgekehrt wird der Stopverlust bei einem Short-Trade über dem 21 SMA oder dem 61,8 Fibonacci-Level platziert, der näher am Einstiegspreis liegt. Auf diese Weise ist das schlechteste potenzielle Gewinn / Verlust-Verhältnis bei jedem Handel ein Phi-Verhältnis (61,8 / 38,2 1,617801047). Positionsgröße und Risikomanagement Für Testzwecke wird jede Position mit einem Mini-Lot eingegeben und wir begrenzen das Risiko auf 2 des Kontostandes. Aufgrund der Bedeutung des Themas verdienen Sie ein ganzes Kapitel für das Risiko - und Geldmanagement. Für jetzt nur auf die vorherigen Schritte konzentrieren und folgen Sie den Regeln mechanisch konzentrieren. Die Vorteile dieses Prozesses sind zahlreich, wie Mark Douglas in seinem Buch ldquoTrading im Zonerdquo erklärt. Systematisch nach einem Satz von Handelsregeln wird der Schüler auf folgende Weise helfen: Erstellen Sie das Selbstvertrauen notwendig, um in einer unbegrenzten Umgebung zu betreiben. Lernen Sie, ein Handelssystem einwandfrei auszuführen. Trainieren Sie Ihren Geist, um in Wahrscheinlichkeiten zu denken. Erstellen Sie einen starken Glauben an Ihre Konsistenz als trader. rdquo Quelle: ldquoTrading In The Zonerdquo von Mark Douglas, Prentice Hall Press, 2001, S.172 Das persönliche Wachstum eines Traders Erfahrungen durch diese Übung allein rechtfertigt die Entwicklung eines mechanischen Handel Ansatz. Sie können mit diesem System als Leitfaden für die Entwicklung eines anderen beginnen, können Sie sogar durch das Kopieren dieses Systems, aber mit der Zeit beginnen, wird Ihr Ziel sein, Ihre eigenen einzigartigen Trading-Ansatz zu entwickeln. Ein System, das als logisches Rahmenwerk für jede mögliche Handelsentscheidung dient, die Sie bilden.
No comments:
Post a Comment