Sunday, October 16, 2016

Java handel stelsel ontwerp

W e l c o m e Welkom by die Huis van die Open Java Trading System Die Open Java Trading System (OJTS) is bedoel om 'n gemeenskaplike infrastruktuur te-beurs stelsels te ontwikkel. Dit bestaan ​​uit vier dele: die byeenkoms van rou data oor die internet die erkenning van handel seine n visualisering module en modules aan te sluit by die programmatiese koppelvlakke van handel platforms soos banke. Die projekte is gemik is om voorsiening te maak 'n self vervat suiwer Java (platform onafhanklik) algemene infrastruktuur vir ontwikkelaars van handel stelsels. Sommige van die aspekte wat aangespreek moet word is om 'n gemeenskaplike SQL92 voldoen databasis skedule vir die berging van finansiële data, algemene Java koppelvlakke vir hoe om te wissel data tussen verskillende modules, visualisering van rou finansiële data en handel seine en verskeie ander algemene aspekte wat nodig is om te skep 'n finale handel system. Because van my werk en familie Ek het nie die tyd om OJTS langer te verbeter. Ek voortgaan om die artikel skakels hier onder wat werk sal jy meer aktief Java open source projekte te lei in daardie gebied, al is. Om die waarheid te as 'n gevolg van my belangstelling in die dinamiek van aandelemarkte het ek 'n reis na die dieper besonderhede van nasionale ekonomie ten einde wisselkoerse verstaan. Hierdie onderwerp uiteindelik lei my na 'n dieper studie van geld op sigself as die metrieke eenheid wat ons gebruik in die ekonomie om waarde, sukses of nut meet. Hierdie onderwerp blyk baie interessant te wees, maar terselfdertyd was dit baie moeilik om enige inligting oor hoe ons monetêre stelsel werk te vind. Gaan rond en vra mense waar geld vandaan kom, wat skep dit en wat bepaal die waarde daarvan. Jy sal sien dat selfs die mense wat 'n meestersgraad of PhD. in Ekonomie sal nie hierdie besonderhede te ken. O ja, hulle sal beantwoord in sommige kriptiese tegniese terme, maar hulle sal nie in staat wees om 'n eenvoudige diagram wat die proses beskryf trek. H. G. Wells het na berig word gesê: Om te skryf van die munt is oor die algemeen erken as 'n aanstootlike, inderdaad byna 'n onsedelike, praktyk. Redakteurs sal die skrywer smeek byna trane nie om te skryf oor geld, nie, want dit is 'n vervelige onderwerp, maar omdat dit altyd 'n diep ontstellende een is. Ek stel voor om enige persoon wat in 'n demokratiese samelewing te lees oor hierdie onderwerp. Dit raak ons ​​lewens elke dag in 'n mate wat nie op daardie wêreld kan exagerated In my opinie elke burger van 'n demokratiese land moet weet waar ons geld vandaan kom. Heel waarskynlik jy gekom het om hierdie webwerf om te kyk vir gereedskap wat jou help om in die verhoging van jou monetêre rykdom. Om die metrieke eenheid geld (maak nie saak of Dollar of die euro) verstaan ​​sal 'n belangrike bestanddeel in jou toolkit vir die maak van geld wees. As jy 'n bietjie tyd en slegs kan bekostig om 'n enkele boek oor die onderwerp lees dan stel ek voor jy lees Wealth, Virtuele Wealth en skuld deur Frederick Soddy. Ek was in staat om 'n gebruikte kopie via Amazon te koop vir 23,48, maar daar bestaan ​​ook 'n aanlyn weergawe. Jy sal die DjVu plugin nodig het om dit te lees. Hierdie boek is oorspronklik gepubliseer in 1929, maar nog steeds beskryf die werklike feite baie goed. Selfs as ek nie saamstem met al gevolgtrekkings van Frederick Soddy sy werk is lekker nadenke stem en sal jou lei om die regte vrae te vra. N e w e Releases, Foutoplossings en opgedateer Dokumentasie aangekondig die opskorting van 'n aktiewe ontwikkeling en bygevoeg verwysings na inligting oor ons geldstelsels (dollar / euro). Bygevoeg 'n links artikel na ander interessante Java handel stelsel projekte. Ek ondersoek oor hoe om OJTS meer versoenbaar is met ander Java handel stelsel pogings te maak. Belegging en Trading System Dokumentasie Projek te vinde by ITSdoc. org. Daar is 'n nuwe wiki beskikbaar by ITSdoc. org fokus op die verspreiding van kennis op die gebied van die belegging en handel stelsels. Die idee agter ITSdoc. org is 'n samewerking platform soortgelyk aan Wikipedia te help om die gemeenskap om kennis te deel nie. OpenJavaTradingSystem v0.13 vrygestel. Gister het ek vrygestel van die weergawe 0.13 van die OpenJavaTradingSystem biblioteek. Onder die nuwe funksies is: data herwinning vir aandele, fondse en geldeenhede van OnVista. Implementering van die munt hantering en doelskoppe. Portefeuljes geïmplementeer en jy kan werk met portefeuljes op dieselfde manier as met 'n enkele sekuriteit papier items. Bygevoeg 'n algemene raamwerk vir die toepassing van algoritmes te aandelemark tydreekse. Gewissel het vanaf die SISC / Skema interaktiewe dop te ABCL / CommonLisp plus sy redakteur genoem J. bygevoeg 'n algemene data caching meganisme om data wat reeds oor die web in die lêerstelsel is opgespoor kas. Plus baie meer geringe verbeterings As jy belangstel in hierdie nuwe weergawe is jy moet begin by die Quick Start / kiekie artikel. Die handleiding is nog nie opgedateer maar dit kan jy tog 'n paar waardevolle agtergrondinligting gee as jy wil na die biblioteek te gebruik in jou projek. Die dokumentasie moet opgedateer soon. Currently daar nie veel ontwikkeling gedoen nie, want ek opgradering my kennis oor Bayesiaanse netwerke. Sien byvoorbeeld die lys van boeke op my webwerf. Twee baie interessante projekte om daardie opsig is Weka en BNJ. Binnekort sal ek voortgaan ontwikkeling en ek sal begin om die eerste intelligensie te integreer in die stelsel. Vandag het ek die eerste vrylating in die artikel lêers van die source aflaai area. Behalwe dat ek opgedateer die handleiding om die interaktiewe gebruik van die projek via die SISC Skema laag te dokumenteer. Vir die ongeduldig hier is 'n vinnig start / kiekie artikel gaan jy kry. D o c o m e n t a t i o n Dokumente beskryf die internals van die projek. Java data voorwerpe en Interface dokumentasie gtgtHTML gtgtPDF Gebruik dokumentasie gtgtHTML gtgtPDF Investment en Trading System Dokumentasie Projek gtgtITSdoc. org T echnology Derde Party Building Blocks wat in hierdie projek HSQL Database Engine (lisensie: hsqldblic. txt) Die HSQLDB is die databasis enjin verskeep met die projek, sodat jy dadelik kan begin met behulp van die OJTS sonder die installering van 'n derde party databasis. Maar as jy van plan is om 'n ander SQL92 voldoen databasis gebruik, dan is dit 'n opsie te. Castor (lisensie: Die Exolab lisensie) Castor is 'n Open Source data bindend raamwerk vir JavaTM. Dit is die kortste pad tussen Java voorwerpe, XML dokumente en relasionele tabelle. Castor bied Java-tot-XML bindend, Java-tot-SQL volharding, en nog baie meer. Castor Doclet (lisensie: GNU LGPL v2.1) Java doclet beide kartering en DDL lêers vir Castor JDO en Castor XML genereer. TestMaker (lisensie: TestMaker open-source lisensie) Van die TestMaker projek net die implementering van die protokolle soos HTTP of HTTPS gebruik vir die insameling van data van die web. jCookie (lisensie: GNU LGPL v2.1) Die jCookie biblioteek is wat nodig is vir die TestMaker biblioteke te werk. htmlparser (lisensie: GNU LGPL v2.1) Die htmlparser biblioteek word gebruik om die data te onttrek van web hulpbronne. ABCL / CommonLisp (lisensie: GNU GPL v2) ABCL (Gewapende Bear Common Lisp) word gebruik om die algoritmiese hart van die projek in die ANSI Common Lisp programmeertaal te implementeer. JFreeChart (lisensie: GNU LGPL v2.1) JFreeChart word gebruik vir die visualisering van finansiële data as kaarte. JSci (lisensie: GNU LGPL v2.1) JSci - 'n wetenskap API vir Java. JODA Tyd (lisensie: Tuis gegroei open source lisensie) JODA Tyd vervang die oorspronklike JDK Datum en Tyd klasse. L i N k s Skakels na ander projekte Die JavaTraders Google-groep kan die beste inskrywing vir jou om uit te vind oor ander Java-gebaseerde handel stelsels en gereedskap wees. L icense Voorwaardes Die kode van die projek is gelisensieer onder die voorwaardes van die LGPL en alle dokumentasie wat jy in hierdie projek is gelisensieer onder die voorwaardes van die FDL. JAVA Trading System hulpbronne Ontwikkelaars SCT het 'n wye verskeidenheid van vaardighede in verskillende tegnologie. Die groot vaardigheid-stel is moontlik gemaak deur 'n doelbewuste fokus op die versterking van ons vaardigheidsbasis. Elke persoon wat gekies is vir ons span bring iets nuuts, iets wat bydra tot ons offers. Ons leer voortdurend, sowel op die baan en deur formele opleidingsprogramme. Maatskappy: SystemCanada www. systemcanada Wêreldwye kantoor: Kanada - VSA - Australië - Verenigde Koninkryk - South Africa - Nieu-Seeland - Ierland - Japan Een van die grootste bank reuse in Australië het tans 'n uitstekende geleentheid vir 'n ervare Java Trading System Ontwikkelaars met 'n passie vir die nuutste ontwikkeling die fokus van hierdie rol sal wees bou 'n Afgeleides Trading System van die grond af. Dit sal gedoen word met behulp van Java, UNIX en versprei caching. Dit sou 'n Senior Ontwikkelaars wat vorige ondervinding bou van 'n afgeleide handel stelsels van nuuts af Die ideale kandidaat sal die volgende vaardighede beskik het pas: Core Java-bediener-kant vaardigheidsontwikkeling in die finansiële markte Solid Unix vaardighede Bewese begrip van verspreide caching en caching tegnologie (Gemfire en / of Coherence verkies) Bewese stelsel ontwerp en argitektuur vaardighede vir handel stelsels sterk analitiese vaardighede Trading Systems kodering: System Design die eerste stap wanneer kodering enige aansoek is die ontwerpfase. Of kodering n sagteware program of 'n handel stelsel, sal versigtig ontwerp en beplanning te help jy klaar is in 'n korter tyd met minder foute. Ons sal met behulp van 'n eenvoudige drie-stap proses om ons handel stelsel te ontwerp. Stap 1: Maak jou eie Trading System Reëls Die eerste stap by die ontwerp van 'n handel stelsel is eenvoudig te kom met die reëls waarvolgens u stelsel sal werk. Daar moet vier kern reëls vir elke handel stelsel: Koop - identifiseer wanneer jy 'n posisie te koop. 13 Verkoop - identifiseer wanneer jy 'n posisie te verkoop. 13 Stop - identifiseer wanneer jy jou verliese te sny. 13 Doel - identifiseer wanneer jy wil 'n wins te bespreek. So, byvoorbeeld: Koop - Wanneer die 30-dae - bewegende gemiddelde (MA) kruisies bo die 60-dag MA 13 Sell - Wanneer die 30-dag MA kruisies onder die 60-dag MA 13 Stop - maksimum verlies van 10 eenhede 13 Doel - Doel van 10 eenhede Hierdie voorbeeld stelsel sal koop en verkoop op grond van die 30- en 60-dae - bewegende gemiddeldes en sal outomaties bespreek winste nadat 'n 10-eenheid wins of te verkoop teen 'n verlies na 'n 10-eenheid skuif in die teenoorgestelde rigting. stap 2: identifiseer die komponente van elke reël Noudat ons ons reëls af, moet ons die komponente betrokke by elke reël identifiseer. Elke komponent moet twee elemente bevat: Die aanwyser of studie gebruik 13 Die instellings vir die aanwyser of studeer Hierdie komponente moet gebou word deur te tik die snelskrif naam vir die studie, gevolg deur die instellings in hakies. Hierdie instellings in hakies verwys as parameters van die aanwyser of studie. 25-dae - bewegende gemiddelde 13 RSI (25) - - 25 dae relatiewe sterkte-indeks MA (25): Soms, kan 'n studie van verskeie parameters, in welke geval jy dit eenvoudig te skei met commas. Lets 'n blik op 'n paar voorbeelde te hê 13 MACD (Close (0), 5,5) - Moving gemiddelde konvergensie divergensie stel wat gebaseer is op vandag se noue, met 'n vyf-dag vas lengte en 'n vyf-dag stadig lengte As jy onseker is oor hoeveel parameters 'n sekere komponent vereis, jy kan net jou handel programme dokumentasie wat hierdie komponente bevat 'n lys saam met die waardes wat gevul moet word in oorleg pleeg byvoorbeeld, kan ons sien dat Tradecision sê vir ons dat ons drie parameters met MACD nodig:. So, vir die in stap genoem voorbeeld een, sou ons gebruik: MA (30) - Betekenis 30-dae - bewegende gemiddelde 13 MA (60) - Betekenis 60-dae - bewegende gemiddelde Stap 3: voeg Aksie Nou sal ons aksies te voeg by ons reëls. Elke aksie voldoen aan die volgende basiese formaat: Indien die toestand TERWYL Toestand dan stappe Tipies, die toestand sal bestaan ​​uit die komponente en parameters wat jy hierbo gemaak het, terwyl die aksie sal bestaan ​​uit koop of verkoop. Toestande kan ook bestaan ​​uit eenvoudige Engels indien geen komponent teenwoordig is. Let daarop dat die tyd komponent is opsioneel. Hier is 'n paar voorbeelde om te help illustreer hierdie punt: AS MA (30) Kruise Bo MA (60) dan koop 13 AS MA (30) Kruise Hier MA (60), terwyl Deel (20000) dan verkoop 13 AS EMO (25) Is groter as MA (5) dan verkoop 13 AS RSI (20) is gelyk aan 50 dan koop So, vir die voorbeeld weve al met behulp van, wed eenvoudig lys: AS MA (30) Kruise Bo MA (60) dan koop 13 AS MA ( 30) Kruise Hier MA (60) dan verkoop 13 INDIEN ons handel het 10 eenhede van wins dan verkoop 13 INDIEN ons handel het 10 eenhede van verlies dan verkoop wat Volgende Volgende, sowel 'n blik op die omskakeling van hierdie reëls in 'n kode wat jou rekenaar kan verstaan ​​Trading Systems Kodering: die Kodering StageSubscribe om nuus te gebruik vir die nuutste insigte en analysisI is in die proses van die ontwerp van 'n verhandeling aansoek wat 'n Markte API sal gebruik om bestellings te plaas op die mark. Dit is nie 'n komplekse hoë werkverrigting algoritmiese handel aansoek van die soort wat in beleggingsbanke. Dit is net 'n klein persoonlike aansoek wat dalk twee of drie keer 'n dag sal handel na gelang van marktoestande / tendense Die aansoek sal bestaan ​​(rofweg) van die volgende modules / pakkette: Strategieë - Die werklike handel algoritmes Analytics - Die klasse vir die ontleding van die lewendige pryse amp bestellings op die mark te produseer koop / verkoop seine Services - die klasse wat gebruik word om 'n verbinding met die mark te behou, markinligting en plek koop / verkoop bestellings te haal. Tot dusver alles wat nodig is vir die toepassing blyk om beskikbaar te wees op die internet: Apache CXF vir die opwekking van die Java-klasse gebruik vir toegang tot die markte web dienste. Apache Wiskunde vir die uitvoering van die pryse Analytics Wikipedia vir die verskillende ontwerp patrone maw Factory, Vak / Observer, staat, ens Waar Im regtig vas is egter met die algoritmes. Ive het besluit om die staat patroon gebruik om te verdeel, in logiese groepe, die verskillende stukke van logika wat uitgevoer moet word wanneer sekere mark voorwaardes voldoen word. Die probleem is dat Im begin om te sien dat dit baie waarskynlik dat elke staat klas 'n ontploffing van as anders state sal bevat: Ek kan nie help nie, maar voel Im mis iets hier en daar moet bestaan ​​sommige raamwerk of ontwerp patroon Ek dont weet wat in staat stel om die ontwikkelaar om al die insette en uitsette van 'n gegewe besigheid konteks omsluit in 'n beperkte aantal sake aksies toevoer / afvoer waarop besigheid rulesalgorithms gebou kan word. Maw Eerder as om die algoritmes Im hoop dat dit moontlik moet wees om die aansoek te doen in 'n reëls verwerker van een of ander aard hardcode. Ongelukkig het ek nie weet waar om te begin op hierdie punt. Ek hoop Ive verduidelik my dilema duidelik genoeg, as jy my wil iets te verduidelik laat my asseblief weet. Dankie gevra 8 9 Oktober by 22: 48A Java Intra-dag Trading System Hierdie webblaaie kom uit 'n werk wat ek gedoen het op 'n intra-dag handel stelsel, in Java geïmplementeer. Hierdie sagteware loop onder die Tomcat Java aansoek bediener en ondersteun handel modelle wat 'n real-time mark data stroom lees. Op grond van hierdie data stroom, die sagteware genereer koop en verkoop bestellings en spore sy posisie in die mark. Moet asseblief nie stuur vir my e-pos vra wat handel tegnieke sal jy ryk maak. Ek weet 'n baie oor die implementering van komplekse sagteware stelsels en ek weet iets oor die bou van die mark handel stelsels. Ek het egter nog werk vir 'n lewe so wil dit voorkom asof ek nie die geheime sous myself ontdek. Ek hoef nie enige merkwaardige mark juju om oor te dra na jou toe. Onder sekere omstandighede sal ek oorweeg buite raadgewende projekte. A Consulting projek moet goedgekeur word deur my werkgewer, so daar is 'n paar oorhoofse in die slag (die laaste keer dat ek het een van hierdie projekte, dit het 'n maand om te goedgekeur). Ek kan net werk met die Amerikaanse burgers, burgers van die Britse Statebond of NAVO-bondgenote. Die eerste reël vir diegene wat vir uurlikse tariewe werk is om te betaal, so moet asseblief moenie skryf vir my daarop dui dat Ek werk vir gratis vir 'n aandeel in jou onderneming. Ek is 'n baie ervare sagteware-ingenieur en rekenaarwetenskaplike en my uurlikse tariewe weerspieël dit. tradeengine. tar. gz Dit is die handel stelsel wat ek ontwikkel. Ek besit die kopiereg vir hierdie sagteware en jy kan dit nie gebruik vir enige kommersiële doel, sonder toestemming. Ook, kan jy nie hierdie sagteware gebruik sonder toestemming vir enige vorm van handel in die mark. Aangesien jy het nie toestemming om hierdie sagteware vir enigiets anders as verwysing te gebruik, kan jy nie hou my aanspreeklik wees vir enige fout in die sagteware of probleme in die gebruik daarvan. Hierdie sagteware is om 'n bietjie gedateer. Daar is baie meer Java hulpbron nou beskikbaar. Alhoewel dit toon die kern argitektuur, kan 'n baie beter stelsel geïmplementeer word met behulp van die huidige hulpbronne Java. Die handel stelsel is ontwerp om te werk met die Interaktiewe Brokers handel stelsel via die Java-koppelvlak. Hierdie webblaaie bestaan ​​uit aantekeninge oor die ontwerp van die handel stelsel wat ek ontwikkel. Daar is ook aantekeninge oor die eksperimente met 'n paar tegniese ontleding styl intra-dag handel modelle. 'N Java handel stelsel word ondersteun deur 'n komplekse sagteware infrastruktuur. Dit sluit in die Apache Tomcat webbediener (aansoek verbreek), real time data feeds en sagteware om die webblaaier gebaseer interaksie met die gebruiker te ondersteun. In die ondersoek na die sagteware wat ek nodig sou wees om die handel stelsel te ondersteun, ek geskep hierdie notas. Ian Kaplan Januarie 2009 Laaste opgedateer op: November 2011


No comments:

Post a Comment