Wenn Du einen Bot haben willst, musst Du erstmal überlegen, was Du eigentlich machen willst. Technical trading, arb usw. Dann kannst Du schauen, ob Du einen passenden Bot findest.
|
|
|
Ich arbeite an Bots. Hauptsächlich erstmal an einem Framework, um das Bauen von Bots leichter zu machen. Hab auch schon paar Bots am Laufen.
|
|
|
I checke gerade Daten von dort, hab aber noch keine zwingenden Gelegenheiten gesehen. Mag auch daran liegen, dass ich gerade wenig Zeit zu testen hab.
|
|
|
Do you have already a framework to fetch data from exchanges?
I already have software running that checks every second for transactions and adds them to a file I have which contains every bitcoin transaction on Bitstamp since its creation. I use this to keep my website up to date ( www.btcpredictions.com) which is very much related to this idea that I'm presenting in this thread. Ok, if you need a framework, that supports more exchanges or want to turn your concept into a desktop or android app, let me know.
|
|
|
Do you have already a framework to fetch data from exchanges?
|
|
|
Yeah, I'm about to add HyperSQL as the persistence layer to my app. But the lack of it was one of the reasons, why I run mainly strategies that don't need long term data. And then I still want the option to run bots on hardware like smartphones etc, which just don't have a lot of memory.
|
|
|
@TimOlson: I got the same problem, too. I can execute drools rule sets with included java to access a depth, or so. But I'd like to get rid of this java for several reasons. The syntax (especially for the BigDecimal based prices and amounts) is ugly. I wanted use (and started just a bit) an antlr grammar for a trading language. I thought the advantage would be, that it's not just a definition of a language, but you can use it immediately to create your own compiler just by adding statements to the production to create code for esper or drools. I have to admit, that I've not heard about esper before your posting, so I cannot really comment yet how good it is for this purpose. @benjyz: in my solution this class is a TradeSite https://github.com/ReAzem/cryptocoin-tradelib/blob/master/core/src/de/andreas_rueckert/trade/site/TradeSite.javabut: you should never access a trade site directly! Most of them have strict rules how often you are allowed to make requests per second/minute/<whatever>. Problem is, that you might have x bots running and you don't know what bot requests which data at which time. That's why I have a central ChartProvider class (not complete though), that controls those requests and also caches the results, so 2 bots requesting the depth for pair ab might actually only trigger 1 request to the actual exchange. I also have situations in which a strategy applies to x exchanges or loops over all the exchanges to check for a certain condition.
|
|
|
BTW: take a look at the various ATP* projects. Also a lot of java trading code there.
|
|
|
Sounds like a very cool project. I'm working on java trading code, too and might be somewhat further in _some_ aspects, since I have a running bot for a couple of months. I might be willing to donate some code, if you can specify, where you need help. I'm also interested to share some code/development in some areas, where I'm not that far. Like a simple trading language to define loadable strategies. I wanted to use drools for that.
|
|
|
I'm looking for someone to test code. Just too busy with adding new features at the moment...
|
|
|
Du könntest einen kleinen Tradebot auf dem PI laufen lassen.
|
|
|
So you are a java security guy?
|
|
|
Are you a coder? I started a mintpal implementation in my framework and some working strategies, that should work on mintpal, too.
|
|
|
Ich will lernen. Z.B. wie so ein Markt funktioniert.
|
|
|
Wenn Du wirklich nicht so gut bist, dann schau evtl. mal nach einer Mephisto Schachschule. Wenn Du da nach der mitgelieferten Literatur vorgehst, dann spielst Du automatisch Eröffnungen, die in der Lib des Computers drin sind, Damit bleibt es lange Zeit im Spiel recht flott, weil er ja nicht soviel rechnen muss. Dann fällt die lahme CPU auch nicht so auf. Nobler sind halt die Modular Bretter, aber die werden immer noch recht hoch gehandelt. Schönheit hat halt ihren Preis...
|
|
|
Wie gut spielst Du denn? Ich find ja die alten Mephisto's cool, aber die CPUs darin sind halt leicht antiquiert. Bei meinem Europa war ich früher mal auf nem Niveau, dass er ne halbe Stunde pro Zug gebraucht hat, was den Spielfluss doch deutlich hemmt.
|
|
|
To any users of the lib: the current CurrencyImpl class gotta go. There are already new classes (not yet complete) in .../trade/currency/Currency* but the transition will break your apps. Let me know, if you have any issues, need special features in the new classes etc. See this issue for details: https://github.com/ReAzem/cryptocoin-tradelib/issues/11Sorry in advance for any inconvenience...
|
|
|
Thanks for the thread anywhere, since I'm in a similar situation...looking forward to the final answer to your question...
|
|
|
Na ja, ich hätte jetzt gesagt, dass man halt ein Interface UserDataProvider (oder so) schreibt, und dann eine Klasse für die Oracle-DB, welches dieses Interface implementiert. Dann könnte man ein weiteres Interface für MySQL usw schreiben. Ich seh jetzt gerade nicht, wie man damit grosse Sicherheitslücken aufreissen würde. Aber wenn jemand die Java-Klassen überschreiben kann, dann nützt Dir die Sicherheit in der DB auch nix mehr. Dann er ggf. gleich den Code recompilieren und die DB-Abfrage einfach rausnehmen und durch return true; (o.ä.) ersetzen.
|
|
|
|