Grupp: Huvudforum

Framtidens system

0
Ogilla!
15
Gilla!
#0   Av: lharc » Redigera
2009-07-30 14:01:01
Ladda ned

Den bifogade bilden visar hur morgondagens algoritmer ser ut.

Algoritmbaserad handel ökar mer och mer för varje år.

Detta gör att man slutligen ställer algoritmer emot varandra och då gäller det att komma först ut.

Om man väljer att använda sig av algoritmer för sin handel har man slagit sig in på en bana

där konkurrensen hårdnar och marginalerna minskar.

Komplexiteten i dessa algoritmer kan man förmoda kommer att öka markant. Detta då algoritmerna

justeras för att dra nytta av andra algoritmer.

Även livstiden på en algoritm kommer att sjunka då möjligheter exploateras och upptäcks i

en snabbare hastighet.

Vidare ställer det krav på programmeringsspråk. Dom imperativa språken som C, Basic, Pascal, Java, C++, Perl

tillfredsställer inte dom krav som ställs av algoritmerna. Med krav menar jag inte prestanda eller

andra maskinella och funktionella krav. På den nivån är alla språk lika.

Dom krav jag menar är dom mänskliga kraven då det är människor som skriver kod.

Där har språk som Common Lisp, Erlang, Haskell, OCaml, Scheme en mycket ljus framtid.

Den bifogade bilden illustrerar en algoritm skriven i Common Lisp.

Ett av dom viktigaste egenskaperna ett programmeringsspråk behöver ha är att sänka barriären

av komplexitet för programmeraren. Detta för att frigöra resurser i programmerarens hjärna till att användas

för kärnproblemet, dvs algoritmens logiska funktion istället för dess implementation.

Lite fort vill jag beskriva vad som menas med mänskliga krav på ett programmeringspråk:

* kodförståelse: Att snabbt kunna ögna igenom ett kodstycke för att få en överblick

Då: for(int i = 0; i _ 10; i++) printf("hej\n");

Nu: (loop repeat 10 do (print "hej"))

* kodöversättning: att skriva ett kort stycke kod som översätts till annan kod

Då:

open(my $fh, '<', 'buy.txt' or die "cant open file");

foreach my $line (<$fh>){

print "Buy paper: $line\n";

}

close $fh;

open(my $fh, '<', 'sell.txt' or die "cant open file");

foreach my $line (<$fh>){

print "Sell paper: $line\n";

}

close $fh;

Nu:

(defmacro walk-portfolio (file &body body)

`(with-open-file (fh file :direction :input)

(loop for line = (read-line fh nil nil)

while line do

,@body)))

(walk-portfolio "buy.txt"

(format t "Buy paper: ~a~%" line))

(walk-portfolio "sell.txt"

(format t "Sell paper: ~a~%" line))

Flera andra viktiga punkter:

* Dynamisk typhantering

Gör koden mer kompaktare då funktioner kan ta emot argument av flera typer

* Automatisk minneshantering

Minskar kodstorleken avsevärt då (de)allokering av minne sker av sig självt.

* Felhantering

Minskar kodstorleken då automatisk felhantering kan göras separat utanför

Den logiska koden. I gårdagens språk görs detta i en blandad mix, tyvärr utelämnas det p.g.a oläsbarhet.

Om ni har frågor och synpunkter, vill lära er mer om denna intressanta framtid, kommmentera gärna.

0
Ogilla!
3
Gilla!
2009-07-30 14:12:30

Ah, gamla minnen väcks till liv när man ser kodrader som slutar med 14 paranteser :-) Men det var nog snart 20 år sen jag slutade koda Scheme.

De argument du framför för att byta från imperativa till funktionella språk är de samma som man använt i alla tider men trots de "uppenbara" fördelarna så har de förtvivlat svårt att slå.

I övrigt finns det bara en sak i ditt inlägg som jag håller med om

Algoritmbaserad handel ökar mer och mer för varje år

och det lär de fortsätta att göra.

0
Ogilla!
3
Gilla!
2009-07-30 14:23:29

framtidens system är nu, det är metatrader 4.

ACM introducera mt4 idag.

dukascopy har bridge till  FXopen ECN II Metatrader 4

HotSpotFX som sålds till FXCM active traders, har nu bridge till Atcbrokers.com Metatrader 4.

den enda kravstå är currenex som inte direkt erbjuder någon bridge till MT4. Men broco investor påstår att de har kört mt4 med currenex prisfeed. det samma gäller också Gomarkets, kör m4t med currenex feed.

Många hedge fonder har gått undan i denna börsenfall, deras liquidity har försmärats, de är tvungna att ha metatrader platform, för det vet de att det kommer kunderna som kör med 5K account.

 

0
Ogilla!
1
Gilla!
2009-07-30 14:45:41
0
Ogilla!
4
Gilla!
2009-07-30 15:15:29

Man kan säga att en programmerare (i vid bemärkelse) brottas med tre problem.

* Vad som skall göras

* Hur det skall göras

* Minneshantering

Med imperativa språk måsta man sköta allt själv. Funktionella språk löser mycket själva i exekveringsmaskineriet av de två nedre punkterna vilket medger kortare utvecklingstid, lägre bugfrekvens och betydligt billigare underhåll.

Priset för dessa fördelar är något lägre exekveringshastighet. (Det kommer delvis av att man inte tillåter destruktiva minnesoperationer).

Det gör att funktionella språk är utmärkt för (stor) kontrollprogramvara där exekveringsprestanda inte är speciellt kritisk. (Den är kritisk för kanske 0-1% av all sådan programvara).

För små applikationer spelar det ingen roll vad man använder. Många kontrollprogram är dock stora (> 1 milj rader c-kod). Där skulle stora pengar kunna sparas med användning av funktionella språk.

Det är dock svårt för ett företag att ta beslutet att använda ett funktionellt språk då man vill vara säker på att kompilatorer och övriga verktyg utvecklas och underhålls i kanske 20-30 år. De ansvariga vågar inte riktigt lita på det. Då tar man hellre träsket med C och C++. (En del går på med modellbaserad utveckling med t ex rose och får ett extra stort träsk).

Är applikationen tillräckligt stor så skulle man tjäna på att ha egen personal som bidrar i kompilator och verktygsutvecklingen. Vinsten med reducerad maintenance är så pass stor. Dock går det emot doktrinen om COTS och därmed går inte det.

För programhandel ser jag inte någon stor vinst med funktionella språk. De applikationerna är så små att det skulle tom fungera med assembler.

0
Ogilla!
3
Gilla!
2009-07-30 22:26:48

för en programmerare det störa problem är att

hur många färdiga lego bitar det finns.

om jag skall bygga en EA,

http://codebase.mql4.com/  där finns alla bitar

vill jag EA koppla till internet någon nyheten siten att hämta nyheten sedan parse den åt den currency som jag tradar med, ok, fine, det finns FFCAL indicator, som jag bara använder.

vill jag koppla EA till excel som jag grejor med, ok, fine, det finns dde som med.

vill jag har koden för neural network i c och dll, och sedan importera det till EA som jag kör i Metatrader, ok, det finns färdigt exemple hur man gör det på codebase där.

vill jag har färdiga martingale, eller vad som helst bitar, det finns på codebase. Man lär sig med dessa bitar mycket snabbt.

sedan det finns så många commercial EA som man kan mycket enkel decompile dem med ex5mq4 decompiler och studerar dem. därför man fastnar med mt4.

det största fördel med Metatrader är att kunskapbanken är stor, och med den kan man enkel föra över tradingkunskap till andra eller "stjäl" kunskap från andra.

det sista nackdel i mt4, debug är riktigt dåligt i metatrader editor.

sedan finns så många micro elle cents konto hos metatrader, man kan forward testa sina EA. många demo konto att testa med är en fördel. 

 

Inlägget är redigerat av författaren.

0
Ogilla!
5
Gilla!
2009-07-30 22:36:03

Härligt finimej....Du är på G... 

Mvh PeterPG

0
Ogilla!
1
Gilla!
2009-08-02 13:36:57

Vad är algoritmbaserad handel i praktiken?  Är det ett automatiskt system som har kontakt med mäklare och automatiskt lägger orders?

Vad är EA?

Intressant tråd...

Mvh våfflan

0
Ogilla!
3
Gilla!
2009-08-02 19:05:00

Ok, nu har jag läst på. Det är alltså det.  Skönt att höra att tekniken nu kommit så långt att man kan göra automatiska system som även lägger orders. Dock tror jag inte att vi kommit närmare "the holy grail" med detta, det krävs fortfarande ett bra system, metod mm som kan ge vinst.

Mvh våfflan

0
Ogilla!
1
Gilla!
2009-08-02 20:13:08

automatisk s/l torde väl räknas till algoritmbaserad handel. det har ju funnits ett tag   

0
Ogilla!
2
Gilla!
2009-08-05 19:16:30

Hittade en sida med forex-brookers:

dailyforex

Jag visste inte att det fanns så herrans mycket... hot stuff tydligen. Finns det inte risk för skojare här? Som t.e.x visar upp fina resultat med robotar, riktiga traders mm, man får ett demokonto som går lysande och sen när man öppnar ett riktigt konto så försvinner pengarna?

Mvh våfflan

Upp till toppen
Kommentera

 

Tjäna mer pengar på dina aktieaffärer

Bli medlem på Aktieguiden gratis på 30 sekunder.

Som medlem på Aktieguiden kan du:

  • Läsa träffsäkra tips och analyser från duktiga traders
  • Ställa frågor till och chatta med aktieproffs
  • Få gratis tillgång till en över miljon inlägg aktiehandel
  • Skapa egna privata forumgrupper

För att få delta i diskussionerna på Aktieguiden krävs att du verifierar ditt mobilnummer. Läs gärna mer om varför verifiering behövs.

 

Redan medlem? Klicka här för att logga in.