Bitcoin Forum
May 27, 2024, 06:14:01 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 3 4 5 6 7 8 9 10 11 »  All
  Print  
Author Topic: Tagebuch eines Bot Entwicklers  (Read 16827 times)
kalkulatorix (OP)
Sr. Member
****
Offline Offline

Activity: 388
Merit: 250


View Profile
October 09, 2014, 07:57:17 PM
 #1

Ich wollte nur einmal anfragen, ob hier ein Interesse an einem Tagebuch mit regelmäßigen Updates, besteht. Das Zeit dabei ist, Neueinsteigern einen realistischen Ausblick zu geben, welche Probleme und welcher Ertrag zu erwarten ist, wenn man sich die Mühe machen möchte, selbst einen Handelbots zu programmieren, diese laufen zu lassen und zu betreuen.

Ich möchte dabei niemanden Ermutigen, irgendetwas zu tun, oder auch bleiben zu lassen, sondern nur einen realistischen Ausblick, jeder kann dann selbst ein Bild davon machen, ob er damit zurechtkommt, und sich der Aufwand an Zeit und Nerven überhaupt lohnt.

Die erwähnten % Zahlen sind authentisch, allerdings kann ich nicht herausfinden (außer bei krasser Fehlfunktion), welcher Bot welchen Anteil an dem Zuwachs hat. Absolute Zahlen sind um einen fixen, aber geheimen Faktor verfälscht.  Die Sourcecodes der Bots werden nicht veröffentlicht, ohne richtige Wartung und Einstellungen funktionieren sie sowieso nicht. Die Auswertungen beschränken sich auf Bots, die auf CEX.IO laufen, wegen Zeitmangel und Übersicht.

An Bots kommen zum Einsatz:

1.) Antizyklisches Handeln auf CEX.IO
2.) Dreiecksarbitrage auf CEX.IO
3.) Arbitrage im BTC/LTC Markt zwischen CEX.IO und BTCe mit manuellen BTC und LTC Transfers.

Interessiert das irgendjemanden? Falls die Zustimmung überwiegt, werde ich am Sonntag damit starten.




12313123
Toolhead
Full Member
***
Offline Offline

Activity: 178
Merit: 101


View Profile
October 09, 2014, 08:00:07 PM
 #2

Hier! Hier! Hier! Grin
Zottelfritz
Member
**
Offline Offline

Activity: 112
Merit: 10


View Profile
October 09, 2014, 08:10:34 PM
 #3

Mich interessiert auf jeden Fall zu sehen was ein Bot so kann, aber du sagst man kann dann die einzelnen Bots nicht auseinander halten?  Embarrassed Wie viele Bots laufen denn dann gleichzeitig?
JohnD
Full Member
***
Offline Offline

Activity: 124
Merit: 100


View Profile WWW
October 09, 2014, 08:15:33 PM
 #4

Bin sehr interessiert.  Hab das selber schon mal versucht aber letztendlich aus Zeitmangel aufgegeben.
LOBSTER
Hero Member
*****
Offline Offline

Activity: 560
Merit: 500


View Profile
October 09, 2014, 08:35:07 PM
 #5

Würde mich ebenso über einen Bericht freuen.
kneim
Legendary
*
Offline Offline

Activity: 1666
Merit: 1000


View Profile
October 09, 2014, 08:37:33 PM
 #6

Es ist erst mal bedenklich, mehrere Bots auf einer Plattform parallel laufen zu lassen, weil man die Erfolge schlecht auseinander halten kann. Ich kann mir jedoch vorstellen, dass sich Arbitrage-Bots und ein antizyklischer Bot ergänzen, und nicht behindern. Der antizyklische Bot ist für die großen Kursbewegungen, sollte Übertreibungen mit Rückschlagpotential erkennen. Und was der Arbitrage-Bot macht, wisst ihr ja, der gleicht einfach Differenzen aus.

kalkulatorix (OP)
Sr. Member
****
Offline Offline

Activity: 388
Merit: 250


View Profile
October 09, 2014, 09:18:56 PM
Last edit: October 09, 2014, 09:32:51 PM by kalkulatorix
 #7

Mich interessiert auf jeden Fall zu sehen was ein Bot so kann, aber du sagst man kann dann die einzelnen Bots nicht auseinander halten?  Embarrassed Wie viele Bots laufen denn dann gleichzeitig?
Es laufen 3 gleichzeitig. Antizyklisches Handeln auf CEX.IO, Dreiecksarbitrage auf CEX.IO und Interexchange Arbitrage zwischen CEX.IO und BTCe im TLC/BTC Markt. Auseinanderhalten kann ich die Bots schon, nur teile ich den Ertrag nicht auf.

Das Problem dabei sind die Legs der Arbitrage, die im Markt stehenbleiben. Die Arbitragebots kümmern sich nicht um offene Orders. Irgendwann werden sie doch gematched, dauert manchmal einige Monate. Ich kann nur vom Bot ausrechnen lassen, wie der Anstieg der Coins durch die einzelnen Bots ist, unter der Annahme die Lags wären alle erfüllt.

Da wäre dann die Rechnung so: Gesamtertrag - Ertrag von den 3erArbitrage - Ertrag von InterExchange = Ertrag von Antizyklus Bot

Da der Antizyklus Bot aktuelle Positionen und offene Orders mit dem Kurs umrechnet, der aktuell am Markt erhältlich ist, stellt das keinen Nachteil für den Ertrag des Antizyklus Bot dar.

Ist eine Darstellung in der Form:

BTCLTCUSDDRKDOGEWert USDWert EURWert BTCÄnderung lt. Zuwachsformel
Stand Beginn 123  BTC123 LTC123 USD123 DRK123 DOGE123 USD123 EUR123 BTC
Ertrag 3EckArb 123  BTC123 LTC123 USD123 DRK123 DOGE123 USD123 EUR123 BTC 345 %
Ertrag 3EckArb % 345 %345 %345 %345 %345 %
Ertrag 3InterArb 123  BTC123 LTC123 USD123 DRK123 DOGE123 USD123 EUR123 BTC 345 %
Ertrag 3InterArb % 345 %345 %345 %345 %345 %
Ertrag Antizyklus 123  BTC123 LTC123 USD123 DRK123 DOGE123 USD123 EUR123 BTC 345 %
Ertrag Antizyklus % 345 %345 %345 %345 %345 %
Stand Ende 123  BTC123 LTC123 USD123 DRK123 DOGE123 USD123 EUR123 BTC
Ertrag Gesamt 123  BTC123 LTC123 USD123 DRK123 DOGE123 USD123 EUR123 BTC 345 %
Ertrag Gesamt % 345 %345 %345 %345 %345 %

ausreichend?

Bitte um Geduld, bis ich die Tabelle fertig habe.....
Endlich fertig, aber schön würde ich das Ergebnis nicht nennen...

12313123
kalkulatorix (OP)
Sr. Member
****
Offline Offline

Activity: 388
Merit: 250


View Profile
October 09, 2014, 09:47:20 PM
 #8

Es ist erst mal bedenklich, mehrere Bots auf einer Plattform parallel laufen zu lassen, weil man die Erfolge schlecht auseinander halten kann. Ich kann mir jedoch vorstellen, dass sich Arbitrage-Bots und ein antizyklischer Bot ergänzen, und nicht behindern. Der antizyklische Bot ist für die großen Kursbewegungen, sollte Übertreibungen mit Rückschlagpotential erkennen. Und was der Arbitrage-Bot macht, wisst ihr ja, der gleicht einfach Differenzen aus.
Stimmt. Die Arbitragebots und der antizyklische Bot ergänzen sich. So kann man die Coins mehr "arbeiten" lassen, die Arbitrage kurzfristig und das antizyklische langfristig. Ich muss nur aufpassen, dass die Arbitragebots nicht zu viele offene Orders lassen, und ggf einzelne Arbitragemöglichkeiten deaktivieren.

Die Erfolge der einzelnen Bots kann ich so nicht auseinanderhalten, da müssen die Bots ihre Einzelergebnisse auswerfen ich manuell zusammenführen.

12313123
daybyter
Legendary
*
Offline Offline

Activity: 965
Merit: 1000


View Profile
October 09, 2014, 10:10:39 PM
 #9

Bei mir nutzen die Bots unterschiedliche Accounts?

kalkulatorix (OP)
Sr. Member
****
Offline Offline

Activity: 388
Merit: 250


View Profile
October 09, 2014, 11:25:34 PM
 #10

Bei mir nutzen die Bots unterschiedliche Accounts?
Das ist eine saubere Lösung, allerdings brauchst Du dann auf allen Accounts genügend Coins für die jeweilige Strategie. Nach Mt. Gox. habe ich immer nur so viel auf der Exchange wie unbedingt nötig.

12313123
daybyter
Legendary
*
Offline Offline

Activity: 965
Merit: 1000


View Profile
October 10, 2014, 09:12:59 AM
 #11

Auf jeden Fall bin ich an Deinem Tagebuch interessiert. Schreib ja selbst Bots und kann da evtl was lernen? Grin

Serpens66
Legendary
*
Offline Offline

Activity: 2926
Merit: 1131



View Profile
October 10, 2014, 02:07:56 PM
 #12

ich wäre vorallem am tatsächlichen Aufwand interessiert.  Also was alles schief gehen kann, worauf man achten sollte und solche Geschichte. Würde nämlich auch gerne einen Bot haben, bin deswegen stark dran interessiert, worauf man da so achten muss.

Mit Cointracking (10% Rabatt) behältst du die Übersicht über all deine Trades und Gewinne. Sogar ein Tool für die Steuer ist dabei Wink                          
Great Freeware Game: Clonk Rage
binance.com hat nun auch SEPA und EUR Paare! Mit dem RefLink bekommst du 5% Rabatt auf die Tradinggebühren!
kalkulatorix (OP)
Sr. Member
****
Offline Offline

Activity: 388
Merit: 250


View Profile
October 10, 2014, 11:43:21 PM
Last edit: October 11, 2014, 12:19:26 AM by kalkulatorix
 #13

So, start des Logbuches.

Gewichtung ist 40% BTC, 20% LTC,  20% USD, 8% DRK, 8% DOGE, 4% FTC

Anfangsstand

BTCLTCDRKDOGEFTCUSDWert BTCWert USDWert EUR
Stand Beginn0.1967458.93366.12265022427135.240.484085174.58138.27

Der 3EcksArbitragebot und der Antizyklusbot sind gestartet. Der InterExchangeArbitragebot ist abgeschaltet.

Am Abend waren 4 Stunden Programmierung, Test und Debugging notwendig, da immer wieder die Fehlermeldung "Rate limit exceeded" aufgetreten ist. Die Beseitigung dieser Fehlermeldung hatte ich schon lange geplant, jetzt war endlich Zeit dafür.
CEX.IO erlaubt nur 600 Aufrufe in 600 Sekunden, habe in den 3EcksArbitragebot eine "Bremse" eingebaut, die nach rund 600 Aufrufen eine entsprechend lange Pause macht. Der Bot arbeitet ca. 3 Minuten und muss dann etwas 7 Minuten ruhen. Dadurch sind die Fehlermeldungen endlich weg.

Allerdings kann ich dann nicht wie geplant den InterExchangeArbitragebot gleichzeitig starten. Da der InterExchangeArbitragebot ohnehin immer wieder einen manuellen Eingriff braucht (die APIs von CEX.IO und BTCe unterstützen kein withdraw von coins) ist der Schaden nicht so hoch.

12313123
hmc_b
Member
**
Offline Offline

Activity: 105
Merit: 10


View Profile
October 11, 2014, 10:52:32 AM
 #14

In welcher Sprache sind die bots? Welche libs werden benutzt?
kalkulatorix (OP)
Sr. Member
****
Offline Offline

Activity: 388
Merit: 250


View Profile
October 11, 2014, 11:52:03 AM
 #15

In welcher Sprache sind die bots? Welche libs werden benutzt?
Die Bots sind PHP Scripts. Da habe ich jeweils das API Interface der jeweiligen Börse genommen, und dabei nur die Fehlerbehandlung modifiziert.
Über dieses API ist dann eine generische API gekapselt, die eine einheitliche Schnittstelle für alle Exchanges zur Verfügung stellt.
Darüber liegt das Script für die Strategie.
On Top das Mainscript für die jeweilige Exchange. Hier sind aber nur die Parameter für die Strategie und ein Main Loop implementiert.

Verforlge ich als 2 Strategien an 3 Exchanges braucht es:

3 API Scripts der Börse
1 generisches API
2 Strategie Scripts
6 ( = 3 * 2 ) Mainscripts

Ist zwar optisch nicht der Brüller, 6 schwarzes Textfenster. Output der Bots wird in je eine Textdatei umgeleitet.

PHP habe ich gewählt, da für jede Exchange ein PHP API verfügbar ist. Es ist für PHP keine Lib nötig, die JSON und SHA Funktionen sind, zumindest in der aktuellen XAMPP Distribution mit dabei.

12313123
Darkwinde
Hero Member
*****
Offline Offline

Activity: 700
Merit: 500


View Profile
October 11, 2014, 03:25:40 PM
 #16

In welcher Sprache sind die bots? Welche libs werden benutzt?
Die Bots sind PHP Scripts. Da habe ich jeweils das API Interface der jeweiligen Börse genommen, und dabei nur die Fehlerbehandlung modifiziert.
Über dieses API ist dann eine generische API gekapselt, die eine einheitliche Schnittstelle für alle Exchanges zur Verfügung stellt.
Darüber liegt das Script für die Strategie.
On Top das Mainscript für die jeweilige Exchange. Hier sind aber nur die Parameter für die Strategie und ein Main Loop implementiert.

Verforlge ich als 2 Strategien an 3 Exchanges braucht es:

3 API Scripts der Börse
1 generisches API
2 Strategie Scripts
6 ( = 3 * 2 ) Mainscripts

Ist zwar optisch nicht der Brüller, 6 schwarzes Textfenster. Output der Bots wird in je eine Textdatei umgeleitet.

PHP habe ich gewählt, da für jede Exchange ein PHP API verfügbar ist. Es ist für PHP keine Lib nötig, die JSON und SHA Funktionen sind, zumindest in der aktuellen XAMPP Distribution mit dabei.

Wirklich interessantes Thema/Projekt was du hier aufmachst.
Ich schreibe auch aktuell an einem PHP Bot, da ich als mit den bisher käuflich erworbenen nicht wirklich zu frieden bin und mal verstehen wollte warum Wink Als verstreuter "Kleincoinbesitzer" im Wert von unter einem BTC haben oftmals die Bot's einen zu geringen Hebel um sich gut zu entfalten (zumindest mein Eindruck). Meine Eigenkreation eines Arbitragevariante zwischen Poloniex und Cryptsy macht sich ganz gut. 0,2 BTC Einsatz und nach drei Wochen 10% Profit. Kann aber auch an den diversen Dumps & Pumps meiner Coins liegen. Aktuell schreibe ich an einer Autobalance Funktion und mach ein Cleanup meiner API Access Schnittstelle um auch mehr als zwei Börsen zu unterstützen. Anyway ich komme von deinem Thema ab...hoffe du schreibst regelmäßig und lässt uns an deinen Erfahrungen teil haben. Echt coole Idee!

daybyter
Legendary
*
Offline Offline

Activity: 965
Merit: 1000


View Profile
October 11, 2014, 05:30:55 PM
 #17

Lässt Du die Sachen auf einem Server laufen? Oder einfach zu Hause auf dem Desktop PC?

BTW: ich benutze java und hab ganz ähnliche Strategien wie Du implementiert. Bin allerdings wohl noch nicht soweit. Mein Arb-Bot läuft noch nicht automatisch.

kalkulatorix (OP)
Sr. Member
****
Offline Offline

Activity: 388
Merit: 250


View Profile
October 11, 2014, 06:57:18 PM
 #18

Ich schreibe auch aktuell an einem PHP Bot, da ich als mit den bisher käuflich erworbenen nicht wirklich zu frieden bin und mal verstehen wollte warum Wink
Ich wollte auch erst einen Bot kaufen, habe eine Lizenz von Haasbot. Eigentlich ein gutes Tool, viele Möglichkeiten, hat auch immer eine Zeitlang funktioniert. Ich konnte mich aber nicht mit der Funktionsweise anfreunden, der Bot hat 2 Zustände, entweder Kauf ( dann macht er als nächstes einen Verkauf ) oder Verkauf ( dann macht er als nächstes einen Kauf ). Kannst zwar mehrere Strategien gleichzeitig fahren, z.B. einen
Strategie die oft mit geringer Spanne handelt, und eine zweite, die selten mit höherer Spanne handelt, aber bei den derzeitigen Kursschwankungen hat Du bald alle im Status Kauf, und er macht erst weiter, wenn es eine Verkaufssituation gibt. Mir gefällt dabei die Hilfe in der Parametrisierung, kannst anhand der gesammelten Kurse die Parameter für optimalen Profit anpassen. Wer das Traden gerne mit Charttechnik macht, für den ist dieser Bot zumindest einen Test wert.

Meine Eigenkreation eines Arbitragevariante zwischen Poloniex und Cryptsy macht sich ganz gut. 0,2 BTC Einsatz und nach drei Wochen 10% Profit.
In Prozent gerechnet, haben Arbitragestrategien den meisten Profit, wenn sie mit kleinen Einsätzen gemacht werden. Da kommt der Bot mit hoher Wahrscheinlichkeit dem Besten Bid und Ask im Markt aus. Mit höheren Einsätzen muss der Bot dann die Zweit und Drittbesten Quoten nehmen, was das Ergebnis in % verringert, aber wegen des höheren Einsatzes vom Betrag her ein besseres Ergebnis bringt. Mach einfach Deine Strategie weiter!

Aktuell schreibe ich an einer Autobalance Funktion und mach ein Cleanup meiner API Access Schnittstelle um auch mehr als zwei Börsen zu unterstützen.
Wieso Access? Speicherst Dein Bot auch Daten ins Access?

12313123
kalkulatorix (OP)
Sr. Member
****
Offline Offline

Activity: 388
Merit: 250


View Profile
October 11, 2014, 07:04:06 PM
 #19

Lässt Du die Sachen auf einem Server laufen? Oder einfach zu Hause auf dem Desktop PC?
BTW: ich benutze java und hab ganz ähnliche Strategien wie Du implementiert. Bin allerdings wohl noch nicht soweit. Mein Arb-Bot läuft noch nicht automatisch.
Ich habe zu Hause einige lüfterlose, flüsterleise, energieeffiziente Computer stehen. Die hängen nur am Strom (brauchen max. 54 Watt) und Netzwerk. Zugriff erfolgt über Remoteconsole vom Desktop PC aus. Habe also meine Server zu Hause stehen.  Cool

12313123
Darkwinde
Hero Member
*****
Offline Offline

Activity: 700
Merit: 500


View Profile
October 11, 2014, 07:17:45 PM
 #20

Lässt Du die Sachen auf einem Server laufen? Oder einfach zu Hause auf dem Desktop PC?
BTW: ich benutze java und hab ganz ähnliche Strategien wie Du implementiert. Bin allerdings wohl noch nicht soweit. Mein Arb-Bot läuft noch nicht automatisch.
Ich habe zu Hause einige lüfterlose, flüsterleise, energieeffiziente Computer stehen. Die hängen nur am Strom (brauchen max. 54 Watt) und Netzwerk. Zugriff erfolgt über Remoteconsole vom Desktop PC aus. Habe also meine Server zu Hause stehen.  Cool

Läuft bei mir auf nem Raspberry PI mit ArchLinux. Sehr stabil und die Stromkosten kannste vergessen, da man das Ding mit bisserl php und DB Operationen nicht auslastet und so noch anderes für mich erledigt Wink Habe aber dadurch auch eien Trennung von meinem Test- und Livesystem. Was mir gestern den Arsch gerettet hat Wink

Pages: [1] 2 3 4 5 6 7 8 9 10 11 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!