Bitcoin Forum
May 22, 2024, 11:27:12 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 [22] 23 24 25 26 27 28 29 30 31 32 33 34 35 »
421  Local / Trading und Spekulation / Re: Tagebuch eines Bot Entwicklers on: January 05, 2015, 09:35:52 PM
Aktuell BTer, Bittrex, Poloniex und Cryptsy.
Weitere können aber bei Bedarf noch implementiert werden hatte aberbisher kein Bedarf.
Bin da flexibel was eure Wünsche anbelangt.

viele der neuen cryptos werden auf

   AllCrypt
   Coins-E
   AllCoin
   Coin-Swap
   SwissCEX
   AskCoin
   UseCryptos.com
   .
   .
   .


gehandelt und gerade am Anfang ist meist hohe Volatilität...

hier
https://de.cryptonator.com/exchange
hat man einen schönen Überblick  Smiley

Nur weil ein Exchange einen neuen Coin ASAP integriert, heißt es ja nicht, dass andere das auch tun. Bei Dreiecks Arbitrage auf einem Exchange geht das, keine Frage, aber nicht bei meiner Methode über zwei Exchanges...

Trotzdem guter Hinweis zu der Seite (merke ich mir) und auch welche Börsen potenziell interessant sein könnten für meine nächsten APIs
Danke dir
422  Local / Trading und Spekulation / Re: Tagebuch eines Bot Entwicklers on: January 05, 2015, 02:13:39 PM
Quote
Quote
> Wenn du Sicherheit gewinnen willst, berechne erst alle Notwendigen Informationen, ob der Trade gut wäre und prüfe zum Schluss nochmal ob die selben Marktbedingungen noch existent sind. Das mache ich auch so, danach feuer frei
hmhm.. ist nur immer schwierig zu erfassen. Weil ich all die Operationen und Abfragen ja theoretisch zurselben Zeit, also in derselben Funktion mache. Das heißt gäbe es keine Verzögerung durch Hardware, Software Inetleitung usw., dann wäre es auch alles zurselben Zeit. Aber wie gesagt, da muss ich mal ein Tool suchen, um zu sehen, wie lange mein Skript tatsächlich braucht und ob es sinnvoll ist, zu anfang und nach den Berechnungen die Werte abzufragen. (nicht sinnvoll wäre es z.b wenn dazwischen dann nur 0,0x sekunden liegen würden)
Weil es in der sleben Funktion ist, heißt es ja nicht zwangsläufig, dass du es parallel alles machst. Ist Python Multithread fähig? Wenn ja könntest du eine Näherung hinbekommen aber ein sofortiges Ergebnis sehe ich aktuell nicht als möglich an....lasse mich aber gerne umstimmen Wink

Quote
Quote
> Logdateien werden dein Bester Freund, sieh schon jetzt eine Logging Klasse vor die du immer bemühst um Daten wegzuschreiben. Gerade das Debugging wird enorm einfacher wenn du einfach mal wichtige Codestellen im Log ausgeben lassen kannst.
Nur zu meinem Verständnis, bin ja noch recht neu was das Programmieren angeht: Eine Logdatei ist doch einfach nur eine Datei, in der ich aufschreiben lasse, was so alles passiert ist. Das heißt wenn keine Profite gefunden werden und auch keine Fehler auftreten steht da für den entsprechenden Zeitraum (kann man ja nach Tag gliedern, oder?) nichts drin. Und sonst steht da nur das drin, was ich vorher festlege, also z.b bei Fehlern dann die fehlermeldungen und bei ausgeführten Trades dann evlt noch die Gewinne und sonstige hilfreiche Dinge. Letzlich ist es also dasselbe wie bisher die Ausgabe in meiner Shell (ich lasse Ereignisse und Fehler immer per "print" ausgeben), mit dem unterschied, dass es abgespeichert wird und zu jeder Zeit daher wieder nachvollziehbar ist.
"Debugging" heißt das auffinden und beheben von Fehlern, richtig?
Wieso soll ich eine Logging Klasse schreiben? Wie würde diese aussehen bzw. wozu wäre sie da? Vermutlich würde ich einfach im Botskript selbst nach jedem Ereignisauslösendem Teil sowas schreiben wie log("es wurde x zu y€/BTC gekauft"), angenommen "log()" sorgt dafür, dass der Text in die logdatei geschrieben wird.
Und wie kann ich mir über die Logdatei wichtige Codestellen ausgeben lassen? Undwozu brauche ich das? Den Code kann ich mir doch direkt im Skript ansehen. Oder meinst du bei Fehlermeldungen, dass dort die Codestelle mit dem Fehler genannt wird?
Jop hast es schon erfasst. Meine Logging Methode gibt auf der Console oder in DB oder schickt mir was per Mail zu, abhängig von dem was ich im Code ausgeben will. Sprich alle aktuellen Daten zur Marktlage gebe ich nur auf der Console aus, wenn aber ein Trade stattgefunden hat kommt es zusätzlich in die DB (wie auch Fehler) und wenn ein Eingreifen des Nutzers erforderlich ist (kein Withdraw via API) dann schickt er mir eine Mail Wink
Debugging -> Nach verfolgen und Lösen von Fehlern
In PHP gibt es zum Beispiel eine Möglichkeit die Struktur und Inhalte von Variablen auszugeben, was oftmals einfach wichtig ist um ein falschen Tradevorgang nachzuvollziehen.


Quote
Quote
> Du musst dir überlegen, wie und wann du mit Partiell Erfüllten Orders umgehst. Da gibt es diverse Einflüsse und musst dir ein Konzept überlegen. Nimm dir zeit dafür.
hast du dazu denn noch Ratschläge?
Ratschlag nicht, aber kann dir sagen, wie ich es mache:
1) prüfe ob partiell erfüllt
2) wenn ja prüfe ob mit vorhandenem Füllstand bereits meine Profitvorgaben erfüllt sind
2.1) wenn nein leg dich schlafen
3) wenn ja prüfe ob Magic Counter erreicht (berechne ich aus Anzahl der zu prüfenden Coins) wurde
2.2) wenn nein leg dich schlafen
3) wenn ja, breche den Arbitrage ab und verkaufe

Ist etwas verwirrend, hat aber den Ursprung darin, dass mein Arbitrage Trading Strategie zwei geteilt aufgebaut ist: Sofortige Ausführung und verschobene.
Die verschobene Arbitrage geht bei mir vom Startpunkt aus, dass jemand mein Kaufangebot annimmt und erst dann los geschossen wird. Damit trage ich eben Sorge, dass mir der Markt nicht weg läuft und ich im Deadstate bin ohne dass die Order nochmal erfüllt wird. kalkulatorix, hat wie oben beschrieben ein anderes vorgehen bei Arbitrage.







Ach noch zur Bot-betreibung:
Welche Möglichkeiten habe ich da denn? Also entweder den Pc den ganzen Tag laufen lassen. Sich ein kleines stromsparendes Gerät wie einen Rasperry kaufen (gibts noch andere leichter einstellbare alternativen? weiß nicht ob ich mich mit Linux rumschlagen möchte). Oder einen Server mieten? Ein Server mieten würde vermutlich heißen, dass ich mein Skript irgendwo hochlade und der Dienstleister dieses dann für mich ausführt, richtig? Was kostet sowas im schnitt, ist es günstiger oder teurer als die anschaffung eine rasperry (oder für welchen Zeitraum lohnt sich was davon). Und sind meine Daten auf dem Server sicher? Schließlich steht im Skript mein API Key und bei manchen Exchanges sogar Username und passwort. Nicht dass die das nutzen können und mich bestehlen ^^

Ist am Ende des Tages eine Sache, was dir am Besten gefällt. Das aagt dir jemand der erst auf seine alten Tage vor einem Jahr mit Linux angefangen hat: Linux rumschlagen musst du dich nicht viel, sind paar Kommandozeilen Parameter und das ding rennt dann bis zum Ende aller Tage. Updates sind auch einfacher als bei Windows. Will meine beiden Rasps nimmer missen. Aber auch jeder andere Mini PC tut es auch und Windows ist ja auch nicht so das Schlimmste Wink schau dich doch einfach mal um und lass dann danach entscheiden was dir ein sicheres Gefühl gibt und was nicht dein Geldbeutel zu sehr schröpft.
423  Local / Projektentwicklung / Re: [ANN] & [DEV] SpreadBot 1000 der BTC Altcoin Trading Bot (v0.9 - Beta) on: January 05, 2015, 01:43:10 PM

Die Idee zum eigenen Trading Bot kam mir vor einigen Monaten, als ich angefangen habe den von asodinis aufzubohren und so zu gestalten, was ich persönlich erwarten würde. Da meine Änderungen zu keienm Update von asodinis kompatibel waren und ich zu stark vom Entwickeln angefixt war, habe ich ein eigenes Projekt aufgesetzt und nach und nach weiter entwickelt.

Hoffe euch gefällt das Projekt und nun her mit euren Fragen Wink
Darkwinde
wäre schön eine public live web view zu haben wie es asodinis anfangs machte..


PSSST jetzt verrate doch nicht alles Wink

Da ist es, hab es noch nicht freigeschaltet. Einiges an Debug Meldungen rauscht noch durch die zu Verwirrung führen was ich denn da für nen Quatsch gerade mache Wink aber kommt zu 1.0
424  Local / Trading und Spekulation / Re: Tagebuch eines Bot Entwicklers on: January 05, 2015, 02:15:47 AM
kalkulatorix hat ja schon sehr ausführlich geantwortet.
Werde daher nochmal auf wirklich Knackpunkte eingehen, die dir vielleicht das Leben erleichtern sollten Smiley


> Wenn du die Orderbücher abfragst, bekommst auch zum einen immer das Volumen und die Tiefe mit. Du brauchst also keine zweite Abfrage nur deine erste etwas Aufbohren. Ich schreibe solche Infos immer in ein Array.

> Wenn du Sicherheit gewinnen willst, berechne erst alle Notwendigen Informationen, ob der Trade gut wäre und prüfe zum Schluss nochmal ob die selben Marktbedingungen noch existent sind. Das mache ich auch so, danach feuer frei Wink

> Logdateien werden dein Bester Freund, sieh schon jetzt eine Logging Klasse vor die du immer bemühst um Daten wegzuschreiben. Gerade das Debugging wird enorm einfacher wenn du einfach mal wichtige Codestellen im Log ausgeben lassen kannst.

> Du solltest nicht auf Exception bei der Erfüllung von Orders prüfen, das geht spätestens bei Partiell Erfüllten Orders schief. oftmals bieten die Exchanges ein API Call an, der dir sagt ob eien Order bereits geschlossen wurde und was der Grund dafür war. Cancel <-> Erfüllt
Gleiches gilt auch für teilweise Erfüllte Orders. Ich meien, dass es Bittrexx ist, die das sogar ganz wüst machen. Da hast du zum Einen Orders die in der API als offen stehen aber gleichzeitig in der History auftauchen ^^ da muss man dann beides verbinden...

> Du musst dir überlegen, wie und wann du mit Partiell Erfüllten Orders umgehst. Da gibt es diverse Einflüsse und musst dir ein Konzept überlegen. Nimm dir zeit dafür.

> Dein Rechner wird nicht der limitierende Faktor sein. Mein Bot äuft auf einem Raspberry PI Model B bei nicht mal 10% Last. Was aber zuträglich ist, sind stabile Verbindungen zu deinem Provider und einen Timeout für API Response und Connect Zeiten einzubauen in das Programm, Rest kannst du nicht beeinflussen.

> API Anfragen kannst du meines Wissens nach nicht beeinflussen nur deren Verarbeitung und da wirst du sicher deinen Weg finden

> Zeitmessung in Python kann sicher wie in PHP gehen. Nimm aktuelle Zeit vor der Methode und nach der Methode, abziehen und tada haste die Durchlaufgeschwindigkeit ^^

Hoffe ich konnte etwas helfen
Darkwinde


PS: Mir viel bisher kein besserer Name als verschobene Arbitrage ein da du eigentlich Ping-Pong Orders generierst und auf Erfüllung wartest, die aber über mehrere Exchanges gehen Wink Wenn es dafür nen Fachbegriff gibt oder jemand einen Coolen namen weiß, her damit ^^
425  Local / Projektentwicklung / Re: [ANN] & [DEV] SpreadBot 1000 der BTC Altcoin Trading Bot (v0.9 - Beta) on: January 03, 2015, 11:15:49 PM
Sind eigentlich sonst keine Fragen mehr zum Bot?!?! Hab ich schon alles gut niedergeschrieben?!? Smiley
Immer raus damit Jungs und Mädels... Smiley

hmm.. also ich hab eig keine Fragen. So wie es aussieht hast du das ganze sehr professionell gemacht und auch an alles gedacht.
Weitere Fragen würden sich dann vermutlich erst ergeben, wenn ich den Bot ausprobiere, sei es in der Handhabung oder sonstiges.

schade ist natürlich im Bezug auf einen AltcointradingBot, dass Mintpal nicht mehr existiert und von Cryptsy nur Schreckensnachrichten kommen. Daher bleiben eig nur 3 Exchanges, wovon ich nur Poloniex vertraue.  Aber naja... wenn man nicht zuviel dort lagert, sollte es dennoch in Ordnung sein.

Was ist mit c-cex  Cheesy Cheesy

Was ich momentan eher erschreckend finde, dass Polo, Bit und BTer meine Probleme meist binnen 24 Stunden gelöst haben. War schon sehr beeindruckend. Cryptsy hat 0 Vertrauen bei mir, aber naja war die erste API die ich angegangen bin von daher ist sie vorhanden und darf genutzt werden Wink

Wenn Bedarf für bestimmte Exchanges sind, lässt sich sicher drüber Diskutieren Smiley muss es nur meiner Frau verkaufen *FG*



Freut mich, wenn ich schon mal soweit Einblick schaffen konnte. Wie gesagt wenn noch etwas fehlt einfach Fragen!
Bzw. nah Auslieferung können wir gerne hier weiter diskutieren, so dass alle Besitzer etwas davon haben.

Aktuell bin ich dabei die Tests zur Version 0.9 abzuschließen und das Paket für die Beta-Tester zu schnüren. Aus meiner Sicht, sieht aktuell alles sehr stabil und gut aus Smiley mal sehen wie die neuen Features auf anderen Systemen laufen Smiley

Was mich nur momentan nervt ist, dass einige Coins so abrutschen, dass mein täglicher Arbitrage Ertrag vollständig aufgefressen wird. Bewege mich seit 4 Tagen horizontal was BTC anbelang, dafür hat sich aber mein Coinbestand erhöht, was ja im Falle des Aufschwunges genau die Richtige Basis ist Wink
426  Local / Projektentwicklung / Re: [ANN] & [DEV] SpreadBot 1000 der BTC Altcoin Trading Bot (v0.9 - Beta) on: January 03, 2015, 07:04:37 PM
Sind eigentlich sonst keine Fragen mehr zum Bot?!?! Hab ich schon alles gut niedergeschrieben?!? Smiley
Immer raus damit Jungs und Mädels... Smiley
427  Local / Projektentwicklung / Re: Mögliche Entgeldmodelle on: January 02, 2015, 05:00:16 PM
Folgend eine erste mögliche Liste von Entgeltmodellen für den BOT... Gerne weiteren Input und Hinweise erbeten!!!

  • Donation: X% des positiven Profites gehen auf ein BTC-Konto.
Updates und Weiterentwicklung sind immer inklusive!
Das wäre das beste da es dann einen Anreiz für beide und Win/Win gäbe...


Die Frage ist allerdings, wie man das so implementiert, dass es für beide Seiten (Käufer und Verkäufer) sauber und transparent ist.

Wann und wie sollten Donations abgeführt werden?
> Direkt nach dem Trade macht weniger Sinn, da bei kleinen Gewinnen alles vom Network Fee aufgefressen wird
> Aufsparen wäre Möglich, nur wo abspeichern ohne Manipulation und genügender Transparenz? Will ja nicht, dass der Käufer sich beschissen fühlt wenn Transaktionen ausgelöst werden die er nicht genehmigt hat?
> Nicht alle Exchanges unterstützen AutoWithdraw von Coins über API Sad
> Wie sollte ich bei PHP, also sourceoffen, vehindern, dass jemand die Donation manipuliert?


Ich bin eigentlich für das Modell, nur bin ich etwas ratlos, wie es umzusetzen wäre...

hmm... ist es denn möglich, dass du eine unmanipulierte History der Trades bekommen kannst? Sodass du den Gewinn desjenigen sehen kannst.
Dann könnte man die Zahlung sozusagen im Voraus mit eventueller Rückzahlung machen. Je nach dem, wieviel der User einsetzen will, überlegst du dir aufgrund deiner Gewinnerfahrungen, wieviel er so ungefähr damit in einem Zeitraum x gewinn machen könnte und lässt dir dafür montalich/halbjährlich/jährlich den Betrag schicken. Und wenn weniger Gewinn gemacht wird, schickst du den Überschuss wieder zurück.

Gut ist auch kompliziert und hat viele schwächen...

Dazu kommt natürlich auch die fehlende Garantie, dass der Nutzer auch bezahlt. Er hat ja dannn deinen Bot und kann sich damit verdrücken... Echt schwierig...

Leider ja Sad aber die Anregungen von euch sind schon klasse und bringen mich weiter Smiley
Scheint ja aktuell aber vom Feedback eher Richtung Lizenzmodell zu gehen, was natürlich einiges für mich persönlich einfacher machen würde Wink aber einfacher ist ja nicht auch immer gut ^^
428  Local / Projektentwicklung / Re: Mögliche Entgeldmodelle on: January 02, 2015, 04:27:35 PM
Folgend eine erste mögliche Liste von Entgeltmodellen für den BOT... Gerne weiteren Input und Hinweise erbeten!!!

  • Donation: X% des positiven Profites gehen auf ein BTC-Konto.
Updates und Weiterentwicklung sind immer inklusive!
Das wäre das beste da es dann einen Anreiz für beide und Win/Win gäbe...


Die Frage ist allerdings, wie man das so implementiert, dass es für beide Seiten (Käufer und Verkäufer) sauber und transparent ist.

Wann und wie sollten Donations abgeführt werden?
> Direkt nach dem Trade macht weniger Sinn, da bei kleinen Gewinnen alles vom Network Fee aufgefressen wird
> Aufsparen wäre Möglich, nur wo abspeichern ohne Manipulation und genügender Transparenz? Will ja nicht, dass der Käufer sich beschissen fühlt wenn Transaktionen ausgelöst werden die er nicht genehmigt hat?
> Nicht alle Exchanges unterstützen AutoWithdraw von Coins über API Sad
> Wie sollte ich bei PHP, also sourceoffen, vehindern, dass jemand die Donation manipuliert?


Ich bin eigentlich für das Modell, nur bin ich etwas ratlos, wie es umzusetzen wäre...
429  Local / Projektentwicklung / Re: [ANN] & [DEV] SpreadBot 1000 der BTC Altcoin Trading Bot (v0.9 - Beta) on: January 02, 2015, 04:18:26 PM
Wie willst du eigentlich dem Problem entgegenwirken, dass sich deine Bots gegenseitig bekriegen?

Angenommen 10 Leute nutzen dann deinen Bot. Jeder dieser Bots erkennt dieselbe Möglichkeit und stellt dementsprechend gleichzeitig die nötigen Orders rein. (wird ja zumindest bei beliebten Coins passieren, dass mehrere auf ihn setzen).  Wer wird da nun zuerst bedient? Ich geh mal daovn aus, dass der Bot auch bemerkt, wenn er ins Leere gekriffen hat und seine nun nicht mehr lukrativen Orders wieder cancelt, richtig?

Je mehr Leute also deinen Bot verwenden, desto unlukrativer wird zumindest Arbitrage.

ZyTReX, hat es ja schon geschrieben. Ich/wir sind ja am Ende des Tages nicht die einzigen Botnutzer am Markt. Aktuell tummeln sich sehr viele in den von mir ausgesuchten Märkten und es bleibt dennoch genug Profit über. Nicht jede Arbitrage Möglichkeit kann jeder Bot auch füllen, daher funktioniert das auch alles solange gut wie genügend Bewegung und Deltas im Markt sind. Wenn der Kurs zwar steigt / fällt aber die Märkte nahezu identische Orders haben, da macht kein Bot mehr gewinne.
Der Bot ist zudem aktuell so programmiert, das er immer nur die beste Buy Order bedient. Dass er auch zwei und drei bedient um so noch mehr Profit zu generieren ist für ein späteres Release geplant. Was aber durch das sehr konservative Vorgehen passiert ist, dass es nur 2 Varianten gibt:
A) Dein Coin Bestand ist so klein, dass deine Sell Order von der Buy Order immer geschluckt wird. Perfekt, da man immer alle Coins im spiel hat Smiley man hat aber das Problem, dass man nicht das potenziell Maximum ausschöpft und mehrmals tradet (Profitreduktion durch Transfergebühren) oder andere das für einen übernehmen (Zeitverlust durch langsame Cointransfers). man erkauft sich Sicherheit mit weniger profit.
B) Man hat immer mehr Coins als normalerweise der Markt nachfragt. Auch hier kann man immer die Buy Order füllen, aber man hat immer Coins rumliegen die nicht genutzt werden. Vorteil ist aber ganz klar im schwankenden Markt, dass man Reserven hat auch mehrere Trades hintereinander zu machen ohne Out of Stock zu gehen.

Ja er cancelt nicht mehr lukrative Orders. Sogar die die teilweise gefüllt wurden um einen Deadstate zu vermeiden. Wenn natürlich der Markt bei einem Coin von sehr schwankend auf ausgeglichen umschwenkt und gerade noch deine eigene Buy Order gefüllt wurde, kann es passieren, dass man mal 2 Tage auf die Erfüllung einer Order warten muss. ist aber nicht schlimm, da es immer wieder neue Möglichkeiten gibt und man nicht in die Falle tappen sollte, selber nervös zu werden Smiley dann geht einiges schief ^^ spreche da aus Erfahrung Cheesy


Lange rede kurzer Sinn, Ja es kann zur gegenseitigen Beeinflussung kommen. Aber Aufgrund der Art, wie der Bot aktuell arbeitet sehe ich sie am Markt nicht gegen andere Bots und um uns nicht gegenseitig zu kannibalisieren werde ich nur 10x den Bot veräußern.



Deswegen müsste da defintiv eine Begrenzung der Lizenzen hin. Dies hätte zur Folge, dass du höhere Preise nehmen musst, wenn du trotzdem genug dabei verdienen willst.  Mein Gedanke dazu wäre, dass du z.b 10 Lizenzen versteigerst an die Höchstbietenden. Das würde allerdings deinem "kleiner Investor" Gedanken widersprechen, da ich und sicherlich auch einige andere bereit wären, deutlich mehr als 0.5BTC zu zahlen, wenn sich dein Bot weiterhin so gut und schnell entwickelt.

Danke für das Kompliment.
Aktuell gedenke ich nur 10 Bots zu veräußern. Wenn alle soweit zufrieden sind und es rennt, vielleicht auch andere Strategien implementiert wurden, dann vielleicht nochmal eine identische Menge aber das ist sehr weit weit weg. Erstmal v1.0 auf die Straße und mit euch einen guten Start hinlegen.



Aber selbst bei 10 Lizenzen könnte es schon Probleme geben... Vllt kann man die Bots so gestalten, dass sie zusammenarbeiten? Irgendwie so, dass jeder betreiber eines Bots gleiche Anteile an den Chancen bekommt, gemessen an seinem Einsatz bei dem jeweiligen Coin?
Dabei kommt mir natürlich auch der Gedanke, dass du es völlig anders machen könntest:
Du könntest auch den bot komplett selbst behalten und stattdessen Investitionen einsammeln. Z.b ich gebe dir 1BTC den du für mich in BTC/DOGE Arbitrage auf Börse a und b steckst.  Du zahlst mir dann die Gewinne abzüglch einer kleinen Gebühr regelmäßig aus.
Also was für Gedanken hast du dazu?

Also den Gedanken als "Broker" / Servicebrtreiber das aufzuziehen hatte ich noch gar nicht. Eigentlich eine gute Idee. Problematisch wird es wohl dahingehend, wie man dann ein Unternehmen gestaltet. Lust und Interesse wäre da, aber Zeit nicht. Will das natürlich (pedantisch Deutsch) in anständiger und transparenter Qualität machen. Ich muss mal darüber schlafen. Vielleicht auch eine Variante für die Zukunft unabhängig von einem Bot, der ja dann nicht mehr Kernbestand ist sondern nur teil des Serviceangebotes.

Dass die Bots sich unterhalten und "absprechen" wer wann was darf ist natürlich der Kasus-Knacktus. Der Bot soll entsprechend dezentral und selbstständig arbeiten und nicht mit Mama telefonieren. Klar wäre das möglich, aber auch Sicherheitskritisch, da man ungehinderter an die API Keys käme ohne das der Besitzer es potenziell mit bekäme. Da ich, wie oben geschrieben, allerdings das Potenzial zur gegenseitigen Störung als gering ansehe, sollte das nicht das Problem werden. Wenn doch müssen wir eine neue Möglichkeit erarbeiten.




Edit:
ich denke am besten wäre für alle wenn:
es keine Konkurrenzprobleme der Bots bei Arbitrage gibt (wie auch immer du das lösen möchtest) und wenn du einen prozentualen Anteil am Gewinn nimmst (so zahlen Kleinbesitzer weniger, als "Großbesitzer")

Das werde ich wohl nicht lösen können, da wir nicht die einzigen am Markt sein werden :/
430  Local / Projektentwicklung / Re: Mögliche Entgeldmodelle on: January 02, 2015, 03:46:27 PM
Ich bin eigentlich für jede Methode die dem Nutzer die Möglichkeit gibt den Bot zu nutzen, bei einer entsprechenden Zahlung.
Bei der Versteigerung und dem Funding gehen meiner Meinung nach zu wenige / oder zu viele Lizenzen (später gratis) raus. Beide Methoden sind auf ihre Weise "unfair"
Ich wäre für die Standardmethode 1 oder 2  Smiley

Ja das könnte passieren, stimmt. Man hätte zumindest ein Gefälle drin was einem potenziell der Bot wert ist und denen die es auch bezahlen können.
Werde den validen Einwand mit in meine Überlegungen aufnhemen
431  Local / Projektentwicklung / Re: [ANN] & [DEV] SpreadBot 1000 der BTC Altcoin Trading Bot (v0.9 - Beta) on: January 02, 2015, 12:09:14 AM
Freue mich schon auf den Bot  Wink
Ich hoffe es wird nicht zu teuer.
Nur aus Interesse, wie lang geht es etwa bis Lizenzen verkauft werden?

Hi ZyTReX,

teuer ist ja immer relativ Wink da ich aber auch möglich interessierte Klein-Coin Besitzer nicht vor die Aufgabe stellen möchte über 1 Jahr erstmal ihren Grundinvest raus zu haben wird es sich im üblichen Rahmen bewegen. Steht aber noch nicht fest. Aktuell grüble ich noch über die möglichen Entgeltmodelle(https://bitcointalk.org/index.php?topic=911201.msg10006126#msg10006126). Gerne auch noch Vorschläge dazu unterbreiten!

"Lizenzen" bzw. der Bot würde dann direkt mit Version 1.0 vergeben werden. Da ich den ganzen Januar Urlaub habe, hoffe ich dieses Ziel zu erreichen. Zumal ich damit rechne, dass gerade am Anfang vielleicht viele Fragen und Supportaktivitäten aufkommen und die möchte ich doch gerne bedienen und nicht erst nach Feierabend ^^
432  Local / Trading und Spekulation / Re: Tagebuch eines Bot Entwicklers on: January 01, 2015, 11:04:08 PM
Ich habe mal zum Projekt ein neuen Beitrag eröffnet.

Zwecks Fragen zum Bot einfach vorbeischauen: https://bitcointalk.org/index.php?topic=911201.0


Ansonsten machen wir hier mit der generellen Entwicklung weiter Smiley
433  Local / Projektentwicklung / BugBoard on: January 01, 2015, 11:02:22 PM
Aktuelle Bug und Fixplan Informationen zu finden unter: https://forum.spreadbot.de/








Folgende Fehler wurden mit früheren Versionen behoben:

  • API Key Exception Meldung
    Funds Update führt bei fehlenden Exchange API Keys zur Exception.
    Gelöst mit: Version 1.5
     
  • Null Reference Exceptions bei BTer API
    Behandlung von Null Exceptions wenn falsche Wallet Informationen von BTer kommen
    Gelöst mit: Version 1.5
     
  • Webfrontend Profitanzeige falsch
    Auf der Coin Informationsseite wurden die Profite für 24 Stunden / 7 Tage und Gesamt falsch ausgegeben
    Gelöst mit: Version 1.5
     
  • Manual Deposit um den Eintrag "Bleutrade" erweitert
    In der Example Datei für "manual-seposits.json" fehlte der Eintrag für Bleutrade.
    Gelöst mit: Version 1.5
     
  • Nonce Fehler bei Poloniex
    Das Log zeigt gehäuft nonce Fehler an. Dies passiert, wenn die Nachrichten an den Server eine andere Zeitsignatur haben, als die erwartete. Dies tritt gehäuft auf, wenn Poloniex veränderungen an ihrer Infrastruktur vornehmen. Aktuell ist kein weg bekannt, wie man den Fehler vermeiden kann, außer die Anfrage erneut zu senden.
    Workaround: Bot weiter laufen lassen
    Gelöst mit: Version 1.3
     
  • Frozen Coins werden nicht ausgewertet
    Auch wenn ein Coin als "frozen" (gesperrt) erkannt wurde führt der Bots Trades gegen den Coin auf dem entsprechenden Exchange durch.
    Gelöst mit: Version 1.3
     
  • PHP Fehler beim AUfruf der Suspend Funktion für Instants
    Verschiedene PHP Fehlermeldung bei der Verarbeitung von Suspended Orders aus der Kategorie "Instant". Die globale Variable fürs Wallet wurde nicht definiert.
    Gelöst mit: Version 1.3
     
  • Withdraw für PTS Bitshares / XMR Monero / XRP Ripple / HZ Horizon und Co funktioniert nicht
    Coins mit einem zusätzlichen Transfermechanismus wie personalisiertes Secret, Tag, Memo, Payment ID können nicht automatisch vom Bot zwischen den Exchanges verschoben werden. Dies liegt an der jeweiligen Börsenimplementation des Features und dass es nicht möglich ist alle notwendigen Informationen via API auszulesen. Diese Coins werden jetzt aktiv davon abgehalten ein Withdraw auf den Exchanges durchzuführen. Arbitrage Trades sind weiterhin möglich, Coins müssen nur manuell verschoben werden.
    Gelöst mit: Version 1.2
     
  • Partial sell führt nicht zu einem Withdraw der Coins
    Wenn profitable Teilverkäufe durchgeführt wurden, sind nicht immer alle Coins von Kauf zur Verkaufsbörse transferiert worden.
    Gelöst mit: Version 1.2
     
  • Logeintrag, dass Coins nicht transferiert werden können von Cryptsy nach X
    Da es sich nur um einen falschen Logeintrag gehandelt hat, funktional alles ausgeführt ok ist, wurde die Meldung entsprechend den korrekten Bedingungen implementiert.
    Gelöst mit: Version 1.2
     
  • Der Bot möchte BTC verschieben, obwohl genügend vorhanden sind
    Der Bot zeigt im Log und Recent Trades an, dass der BTC verschieben wollte. Aufgrund der Konfiguration Einstellung "auto-btc-balance": false" physikalisch nicht umgesetzt, lediglich nur in der Datenbank pro-aktiv erfasst. Der Bot macht jetzt einen zustätzlichen Sicherheitscheck, bevor er wirklich ein BTC Ausgleich in Betracht zieht.
    Workaround: Entfernt die Einträge in der Tabelle "Trades" mit dem Coin BTC wenn ihr nicht der Anweisung manuell gefolgt seid.
    Gelöst mit: 1.2
     
  • Web Frontend / UI Anzeigenfehler der Funds
    Coins die nicht mehr auf der Börse hinterlegt sind, werden weiterhin angezeigt. Der Bug ist rein anzeigenbedingt und beeinflusst die Trades nicht!
    Gelöst mit: Version 1.1
     
  • Fehlemerldungen "No DEPOSIT-ADDRES" bei Poloniex. Coin wird übersprungen.
    Der Bot zeigt die Fehlermeldung "Skipping Poloniex (No DEPOSIT-ADDRESS for XXXX)" an, und prozessiert den entsprechenden Coin nicht. Obwohl mehrfach eine neue Adresse generiert wurde und auch die Datei "manual-deposit.json" keine Einträge enthält, geht der Fehler nicht weg. Das liegt leider daran, dass aktuell nur beim Starten des Bots die Adressen von Poloniex geladen werden.
    Workaround: Bot neu starten
    Gelöst mit: Version 1.1
     
  • Bot versucht Coins zu kaufen, obwohl keine BTC vorhanden sind
    Wenn die BTC Reserven vollständig aufgebraucht sind und die jeweilige Börse zum Kauf angehalten ist, kann es vorkommen, dass die API nicht 0 sondern Null zurückgibt. Dies lässt den Bot denken, dass er noch genügend BTC Bestände zum Kauf hätte. Die Börse lehnt diesen dann mit einer Fehlermeldung ab.
    Gelöst mit: Version 1.1
     
  • Bot prozessiert den Coin nicht weiter beim Withdraw Fehler
    Für einen erfolgreichen Withdraw erwartet der Bot die entsprechende Anzahl an Coins auf dem Buy Exchange. Wenn das nicht der fall ist, blockiert er solange die weitere Abarbeitung des spezifischen Coins. Das sollte so nicht sein und wird entfernt.
    Gelöst mit: Version 1.1
     
  • Bot prüft nicht alle angegebenen Coins
    Aufgrund eines Fehlsers in der Array Merge Logik bei der Listenerstellung werden versehentlich Coins herausgefiltert und somit nicht mehr geprüft. Das passiert jedoch nur wenn wenige Coins bei Cryptsy gehandelt werden und durch die von den anderen Börsen überschrieben werden.
    Gelöst mit: Version 1.1
     

434  Local / Projektentwicklung / Bilder on: January 01, 2015, 11:02:14 PM
Consolen Output:
> Raspberry PI mit Arch Linux
> PHP und mySQL (MariaDB)




Webinterface:
> Aktuelle Datenübersicht vom Bot.
> Man sieht sehr gut, dass durch den Kuranstieg bei BC einige Arbitrage Trades als auch Antizyklische Trades (Grün - Sell) durchgeführt wurden.
> Man sieht zudem, dass die Coins die im Wert gefallen sind (VIA, BTCD, LTC, POT) von der Antizyklischen Strategie nachgekauft wurden (Orange - Buy).
> Warum sind so viele Antizyklische Buy gehäuft? Hab die Strategie nach einer Testperiode wieder aktiviert und was sich über die Tage davor "angestaut" hat, wurde dann ausgeglichen.




Webinterface:
> Chart mit den letzten 48 Stunden Snapshot Daten vom Profit.
> Passend zu den Recent Trades kann man die Antizyklischen Käufe nachvollziehen



Webinterface:
> Chart mit den letzten 48 Stunden Snapshot Daten vom aktuellen BTC Stand auf den Börsen
> Man kann sehen, dass trotz der Antizyklischen Käufe es kaum Bewegung im BTC bestand gab, das lag daran, dass zuvor ausgelöste Arbitragen viel kompensiert haben bzw. Orders zurückgezogen wurden
> Unten seht ihr das Logbuch, was hat der Bot getan




Webinterface
> Übersichtsseite was ist alles so beim Coin (BC) passiert
435  Local / Projektentwicklung / Logbuch on: January 01, 2015, 11:02:06 PM


<Logbuch>
10.07.2016
> Version 2.0-1 (Hotfix Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert: https://forum.spreadbot.de
> Release Notes: TBD


26.06.2016
> Version 2.0 (Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert: https://forum.spreadbot.de
> Release Notes: https://bitcointalk.org/index.php?topic=911201.msg15511905#msg15511905


17.03.2016
> Version 1.8-1 (Hotfix Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert: https://forum.spreadbot.de
> Release Notes: N/A


01.03.2016
> Version 1.8 (Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert: https://forum.spreadbot.de
> Release Notes: https://bitcointalk.org/index.php?topic=911201.msg14060274#msg14060274


28.10.2015
> Version 1.7-1 (Hotfix Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert: https://forum.spreadbot.de
> Release Notes: https://bitcointalk.org/index.php?topic=911201.msg12906241#msg12906241


10.10.2015
> Version 1.7 (Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert
> Auslieferung und Informationen erfolgen zukünftig über das SpreadBot Forum: https://forum.spreadbot.de
> Release Notes: https://bitcointalk.org/index.php?topic=911201.msg12649872#msg12649872


31.05.2015
> Version 1.6 (Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert
  • Dokumentation: Für SpreadTrading und Bleutrade aktualisiert
  • Core: Snapshot speichert nun auch das gesamte Volumen des Portfolios
  • Core: Consolenausgaben zur Trading Strategie wurde um Coininformationen erweitert
  • Core: Auto-Withdraw/Deposit Modul hatte für Bittrex zu wenige Anhaltspunkte um einen Transfer zu identifizieren und hat zu viele Ergebnisse geliefert
  • Core: Auto-Withdraw/Deposit Modul wurde den maximal zulässigen Nachkommastelen pro Exchange angepasst
  • Webfrontend: Transfers können jetzt via Checkbox bestätigt werden
  • Webfrontend: Total Volume beinhaltet jetzt auch die Aktiven Angebote (Open Orders)
  • Webfrontend: Total Volume wird jetzt als Chart in BTC und Euro angeboten
  • Webfrontend: Volume per Coins als Chart hinzugefügt
  • Webfrontend: Bleutrade wurde unter Active Orders ohne e dargestellt
  • Webfrontend: Heartbeat Timer erhöht auf 7 Minuten



09.05.2015
> Version 1.5 (Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert
> Bugfix Release
  • Core: Manual Deposit um den Eintrag "Bleutrade" erweitert
  • Core: Funds Update führt bei fehlenden Exchange API Keys zur Exception
  • Core: Behandlung von Null Exceptions wenn falsche Wallet Informationen von BTer kommen
  • Webfrontend: Auf der Coin Informationsseite wurden die Profite für 24 Stunden / 7 Tage und Gesamt falsch ausgegeben



17.04.2015
> Version 1.4 (Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert
> Neue Features Core
  • Unterstützung für neuen Exchange als neues Modul: Bleutrade
  • Unterstützung für neue Trading Strategie als neues Modul: SpreadTrading
  • Coin Transfer Prüfung via API (Withdraw und Deposit). Status wird in der Datenbank vermerkt.
  • DynamicRebalance berücksichtigt jetzt eine Markttiefe von -7 je Ask / Bid Orders
  • Arbitrage Geschwindigkeitsverbesserung (~30%): Reduktiond er API Abfragen und Suspend als Teil der Coinabfrage im Arbitrage
  • Automatische Withdraw Fee Berechnung für Bittrex, Poloniex, Cryptsy, Bleutrade. BTer Withdraw Fee werden weiterhin über "./config/fees.json" definiert
  • Wenn Strategien ausgeschaltet sind kommt jetzt keine Abfarge der Coinbestände mehr, da eh irrelevant
  • Manual BTC Balance Information beinhaltet jetzt die Deposit Adresse
> Neue Features Webfrontend
  • In der Coin-Info Seite, Klick auf den Coin in der Funds Box, wurde ein neuer Bereich für offene Transfers hinzugefügt. Für BTer und Bleutrade muss der Coineingang (Deposit) manuell bestätigt werden, da entsprechende API's fehlen.
    Dies kann nach Review auf dem Exchange direkt im Webinterface via Checkbox und dem Save Button erledigt werden. Der Status wird dann entsprechend in der Datenbank vermerkt.
    Für Bleutrade und BTer wurde von mir eine API Erweiterung angefordert. Nur Bleutrade bisher eine feste Zusage zur Implementation. ETA offen.
  • In der Coin-Info Seite werden jetzt nurnoch die Trades der letzten 14 Tage angezeigt. Die komplette Historie kann weiterhin als Excel heruntergeladen werden.
  • BTer wird wieder unter aktivierten Exchanges angezeigt
  • Überarbeitung der Systeminformationen
  • Schriftart wurde um 1% verkleinert und Datumsinformation in Recent Activities und dem Log hinzugefügt
  • Wording Bugfixes



15.03.2015
> Version 1.3 (Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert
> BugBoard wurde aktualisiert: https://bitcointalk.org/index.php?topic=911201.msg10006126#msg10006126
> Webinterface: Logging ist jetzt Absteigend (ältester Eintrag zu erst)
> Webinterface: Tag & Nachtmodus (Änderung vie Radio Button unter der Log-Box)
> Webinterface: Anzeige des Portfolio Volumens in BTC und Euro
> Webinterface: Anzeige der Coin Performance Gesamt und letzte 24 Stunden


06.03.2015
> Version 1.2 (Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert
> BugBoard wurde aktualisiert: https://bitcointalk.org/index.php?topic=911201.msg10006126#msg10006126


04.03.2015
> Version 1.1 (Release) wurde an alle Käufer mit bestätigtem Bezahlstatus ausgeliefert
> BugBoard wurde aktualisiert: https://bitcointalk.org/index.php?topic=911201.msg10006126#msg10006126


01.03.2015
> Version 1.0 (Release) wurde an alle Beta-Tester und Käufer mit bestätigtem Bezahlstatus ausgeliefert
> BugBoard um Fehler zu tracken wurde erstellt: https://bitcointalk.org/index.php?topic=911201.msg10006126#msg10006126


22.02.2015
> BTC/€ Preis von BTC-e.com wird zum Tradezeitpunkt ermittelt und mit in der Datenbank erfasst. So ist eine Gewinn- / Verlustermittlung in € möglich und das Amt freut sich. Warum BTC-e? Haben eine offene und einfache API zum Abruf, Bitcoin.de will da private API keys für haben Sad
> Webfrontend wurde nahezu vollständig auf Datenbank Calls umgestellt. Nur in Ausnahmefällen werden noch die API's der Börsen belästigt
> UI Skalierung wurde auf 1280 Bildschirme angepasst
> Profitanzeige ist jetzt auch in der jeweiligen Coinansicht implementiert
> Excel Export eurer Trades pro Coin oder gesamt
> Snapshot trackt jetzt auch euren Profit in Euro, sowie den BTC/€ Verlauf auf BTC-e
> Börsenrelevante Parameter wurden in das jeweilige Exchange Objekt verlagert und schafft so mehr Übersicht im Code als auch Struktur.


07.02.2015
> Version 0.11 erstellt und an Beta Tester versendet.
-  Der Suspend Mode: Der Bot hat eine vollständig neue Mechanik erhalten, nachdem er teilweise erfüllte Trades automatisch bewertet und ggf. dem Markt entzieht. Der Bot bewertet vor jedem neuen Durchlauf die aktuelle Lage der suspendierten Orders und stellt sie bei Profit wieder in den Markt. Durch die neue Mechanik wird es möglich auch Coins die auf einem partiellen Hoch erstanden wurden aktiv zu nutzen und bei der nächsten Gelegenheit ohne Verlust wieder zu veräußern.
- Kleinere Bugfixes zur Sell Strategie aus v0.10
> Die neuen Guides und Nutzerbedingungen im ersten Beitrag verlinkt unter "Dokumentation"
> Entgeltmodell (Lizenzmodell) im ersten Beitrag beschrieben unter "Hinweise"


28.01.2015
> Review von whyte: https://bitcointalk.org/index.php?topic=911201.msg10289814#msg10289814


23.01.2015
> Version 0.10 erstellt und an Beta Tester versendet.
- Enabled Coins können jetzt pro Handelsstrategie festgelegt werden
- Neue Sell Strategie, die es dem Bot erlaubt teilweise erfüllte SELL Orders neu zu bewerten und zu aktuellen Marktkoordinationen einzustellen. Das sollte das Problem mit "feststeckenden" SELL Orders massiv verbessern.
- Webpage wurde mit paar neuen Funktionen erweitert, u.A. Vollständige Trade History über Funds -> BTC oder auch die BTC-e Preis-Umrechnung von BTC nach Euro
- Der Bot informiert jetzt nicht nur darüber, dass er BTC irgendwo braucht, sondern versucht auch entsprechend die BTC umzuverteilen.
Wenn die Exchanges die Withdraw Funktion via API anbieten, passiert dies voll automatisch und ihr solltet nicht mehr manuell eingreifen müssen.
- Informationsmeldungen via Mail wurden überarbeitet
- Einiges an Bugfixes die die Stabilität und Ablauf des Bots gestört haben


11.01.2015
> Bot Live Board für 36 Stunden freigegeben.


09.01.2015
> Hotfix Version 0.9-1 erstellt und an Beta Tester versendet.
- Es konnte gelegentlich dazu kommen, dass Der Bot nicht erkannt hat, dass bereits Teile einer Order gefüllt waren. Diese Order wurde abgebrochen ohne die bereits erstandenen Coins zu verkaufen.
- Bittrex sendet gelegentlich als Order Typ "BUY" anstelle "Limit_Buy", Besonderheit wird jetzt abgefangen
> Installationshandbuch für den Raspberry PI mit Arch Linux fertiggestellt: HIER


05.01.2015
> Systemtest & Abnahmetest der Version 0.9 abgeschlossen
> Version 0.9 an Beta Tester versendet


02.01.2015
> Start des Beitrages
> Wiedergabe des aktuellen Entwicklungsstandes
> Screenshots vom Bot hinterlegt
> Aktueller Stand zum Entgeltmodell hinterlegt
> Aktuelles Release: 0.9
> Release Status: Systemtest & Abnahmetest
436  Local / Projektentwicklung / [ANN] & [DEV] SpreadBot 1000 der BTC Altcoin Trading Bot (v2.0 Release) on: January 01, 2015, 11:01:38 PM
Hi zusammen,

wie schon HIER öfters erwähnt, arbeite ich an einem Bot der für mich das Trading übernimmt. Um den Beitrag zur Bot-Entwicklung nicht mit Off-Topic zu überfluten, eröffne ich diesen Beitrag um eine bessere Anlaufstelle zu bieten. Nun aber zu dem was hinter dem Projekt "SpreadBot 1000" steckt... Smiley
Hi zusammen,

beim  Projekt "SpreadBot 1000", dem Bitcoin - Altcoin Trading Bot... Smiley



Was und warum SpreadBot 1000
Die Idee zum eigenen Trading Bot kam mir, als ich angefangen habe den Bot von "asodinis" aufzubohren und so zu gestalten, was ich persönlich erwarten würde. Da meine Änderungen zu keinem Update von asodinis kompatibel waren und ich zu stark vom Entwickeln angefixt war, habe ich ein eigenes Projekt aufgesetzt und nach und nach weiter entwickelt. Anfangs sollte der Bot rein Arbitrage von Altcoins zwischen zwei Exchanges machen und mittlerweile bedient der Bot bis zu sechs Exchanges gleichzeitig und kann im Arbitrage, DynamicRebalance (Antizyklisch), SpreadTrading und im LimitTrading handeln.

Da hier im Forum ein hohen Interesse an Trading Bots gibt, habe ich mich entschlossen den Bot in eine stabile Version zu bringen und Interessierten gegen ein Entgelt anzubieten.



Hinweise
  • Review Schreiber: Review von whyte, Review von hanspeter77
     
  • Entgeltmodell: Lizenz - Der Bot kann für den genannten Preis erworben und einmalig weiter verkauft werden. Beim Weiterverkauf erlischt das eigene Nutzungsrecht und geht auf den Käufer über. Installationsort kann frei gewählt werden. Bugfixes und Weiterentwicklung von bestehenden Funktionen sind kostenfrei und inklusive. Es wird sich das Recht vorbehalten Spezielle neue Features gegen ein zusätzliches Entgelt anzubieten (DLC).
     
  • Unterstützte Coins: Der Bot arbeitet mit jedem Altcoin der gegen Bitcoin auf den jeweiligen Börsen gehandelt wird. Da es sich um ein Bitcoin-Altcoin TradingBot handelt wird zum Beispiel DOGE-BTC gehen, aber DOGE-XRP nicht.
     
  • Unterstützte FIATs: Der Bot arbeitet mit folgenden Währungen gegen Bitcoin zusammen:
    BTC-e -> USD, EUR, RUR
    Bitstamp -> USD, EUR
    BTer -> CNY
    Bleutrade -> USD
     
  • Marktanalyse: Der Bot besitzt aktuell kein Modul zu Marktanalyse, noch kauft er eigenverantwortlich neue Bestände ein. Er handelt mit dem Portfolio was im Rahmen der gewählten Strategie vorhanden und freigegeben ist.
    Der Nutzer des Bots ist also der mündige Portfoliobesitzer und entscheidet selber über Aufstockung und Reduktion!



Preis und Lizenzezerwerb



Dokumentation



Features
  • Arbitrage Trading Strategie
  • Antizyklisch / Dynamic Rebalance Trading Strategie
  • Spread Trading Strategie
  • Limit Trading Strategie
  • Unterstützung für FIAT
  • Coin Balance Funktion
  • Snapshot Funktion
  • Adaptive Sell Funktion
  • Suspend Funktion
  • Stop Loss Funktion
  • Exchanges sind Cryptsy, BTC-e, Poloniex, Bittrex, BTer, Bleutrade, Bitstamp
  • Web Interface / Live Board
  • Global konfigurierbare Trading Parameter
  • Individuell pro Coin konfigurierbare Trading Parameter
  • Definition eigener Deposit Adressen
  • Mandrill oder Sendgrid Mail Benachrichtigungen
  • ...



Technologien



Getestete Systeme
  • Raspberry PI mit Arch Linux
  • Windows mit XAMPP



Konfiguration
Die Konfiguration des Bots erfolgt über JSON und PHP Dateien. Zum einen werden hier Datenbank Informationen hinterlegt, Tradingstrategien, Tradingparameter und manuelle Deposit Adressen definiert.
Es ist möglich dedizierte Coins und Börsen fürs Trading zu aktivieren. Trading Parameter können den eigenen Wünschen und zur Laufzeit angepasst werden.

Folgend ein Auszug aus der "config.json"
Code:
{
"cryptsy-publickey": "",
"cryptsy-privatekey": "",

"poloniex-key": "",
"poloniex-secret": "",

"bittrex-key": "",
"bittrex-secret": "",

"bter-key": "",
"bter-secret": "",

"mandrill-api-key": "",
"mail-address": "",

"strategy-arbitrage": true,
"min-profit-factor": "1.01",
"min-buy-profit": "0.00010000",
"min-sell-profit": "0.00005000",
"buy-increase-parameter": "0.00000001",


"auto-btc-balance": true,
"auto-altcoin-balance": false,
"min-balance-factor": "1.10",


"strategy-dynamicRebalance": true,
"dynamic-rebalance-factor": "1.08"
}



Folgend ein Auszug aus der "config.json"
Code:
{
"Arbitrage":
{
"BLK": {},
"LTC":
{
"min-profit-factor": "1.015",
"min-buy-profit": "0.00005500",
"min-sell-profit": "0.00002500",
"buy-increase-parameter": "0.00000002"
},
"WDC": {}
},

"DynamicRebalance": {},

"SpreadTrading": {},

"LimitTrading": {}
}



Arbitrage
Man aktiviere die zu handelnden Altcoins und Exchanges. Auf den Exchanges, wo der Bot verkaufen soll, werden die jeweiligen Altcoins hinterlegt und los gehts. Der Bot prüft die aktuellen Orderbücher, ob nach Abzug von Handelsgebühren und Transfergebühren mindestens der voreingestellte Gewinn über bleibt. Wenn das der Fall ist löst er direkt einen Kauf und Verkauf aus. Wenn nicht, überprüft er ob ein verschobener Arbitrage Handel möglich ist. Wenn auch das nicht geht, legt er sich wieder schlafen. Mit verschobener Arbitrage Handel meins ich, dass der Bot eine Kauf-Order in den mark stellt und darauf wartet bedient zu werden. Wenn das der Fall ist verkauft er die gleiche Anzahl auf den profitablen Handelsplätzen.



Antizyklisch / Dynamic Rebalance
Wer generell etwas zur Strategie erfahren möchte, bitte den Beitrag von kneim lesen: HIER
Der Bot implementiert aktuell eine einfache, aber aus meiner aktuellen Sicht absolut ausreichende Variante des Antizyklischen Handelns. Bei Aktivierung werden die aktivierten Altcoins aufgenommen und zum aktuellen Marktpreis festgehalten. Der Bot prüft nach einer definierten Zeitspanne, ob eine Änderung von X prozent (konfigurierbar) stattgefunden hat. Bei einem Preisanstieg werden Coins entsprechen der Ration 50:50 verkauft, beim Fallen entsprechend verkauft. 50:50 bedeutet, dass nur 50% des Gewinns in BTC umgewandelt wird, respektiv Coins gekauft werden.
Eine Altcoin spezifische Gewichtung ist nicht implementiert, um die Komplexität zu verringern.



Spread Trading
Bei der Spread Trading Strategie handelt der Bot nur auf der jeweiligen Börse innerhalb des Altcoin/Bitcoin Paares und versucht Kursunterschiede zwischen Kauf- und Verkaufangebote zu nutzen. Dabei wird der Bot für einen vorgegebenen Gesamtwert pro Trade (Stake) Coins erwerben und im definierten Spread wieder zu verkaufen. Diese Strategie funktioniert sehr gut in stark schwankenden und/oder Märkten mit einem hohen Handelsvolumen pro Tag. Diese Strategie ist nicht gut für FIAT mit kleinem Spread geeignet. Daher sind die Börsen Bittrex und BTC-e zu bevorzugen. Poloniex und BTer zeigen eine mittlere Performance innerhalb ihrer Märkte und können bei zu hohem Stake nicht effektiv handeln.



Limit Trading
Bei der Limit Trading Strategie handelt der Bot nur auf der jeweiligen Börse innerhalb des Altcoin/Bitcoin Paares und versucht Kursunterschiede im steigenden Markt zu nutzen. Im Gegensatz zum Spread Trading wird hier nicht rein auf den Unterschied zwischen Kauf- und Verkaufsangeboten geachtet, sondern geschaut ob die aktuelle Marktlage sich im 24 Stunden horizontalen Korridor bewegt oder am Ausbrechen des Trends sich befindet. Dabei wird der Bot für einen vorgegebenen Gesamtwert pro Trade (Stake) Coins erwerben und im definierten Korridor wieder zu verkaufen. Diese Strategie funktioniert sehr gut in leicht schwankenden und/oder Märkten mit einem hohen Handelsvolumen pro Tag. Diese Strategie eignet sich gut für FIAT.



Coin Balance
Ein Modul was nach einer konfigurierten Zeitspanne die Verteilung der Coins auf den Börsen prüft und entsprechend umverteilt. Eine Umverteilung wird zudem nur durchgeführt, wenn keine aktuellen Orders oder Withdraws vorliegen, um die Konsistenz des Portfolios zu schützen. Da sich eine Umverteilung negativ auf den profit auswirkt, sollte der Wert nicht zu hoch angesetzt werden.



Snapshot
Jede Stunde wird ein Snapshot der aktuellen Profite und BTC Verteilung gezogen und im Web Frontend angezeigt. Weiteres Coinbasiert wird sicher folgen.



Adaptive Sell Funktiont
Der Bot prüft die Verkaufsorders ob eine Teilerfüllung vollzogen wurden und Profitabilität garantiert. Wenn dem so ist, wird eine neue Verkauforder entsprechend den Proftvorgaben und Marktbedingungen erstellt



Suspend Funktion
Der Bot prüft mit jedem Durchlauf, wie lange bereits die Order im Markt steht. Nach ca. einer Stunde ohne Marktbewegung / Erfüllung, wird die Order dem Markt entzogen und suspendiert, bis der Markt eine Profitabilität ermöglichen würde.
Gleiches gilt auch für die Arbitrage Instant Trades, wo bereits die Verkaufsorder, aber nicht die Kauforder erfüllt wurde. Der Bot kauft die fehlenden Coins entsprechend den Profitvorgaben nach.




Consolen Output:
> Raspberry PI mit Arch Linux
> PHP und mySQL (MariaDB)




Webinterface:
> Aktuelle Datenübersicht vom Bot.
> Man sieht sehr gut, dass durch den Kuranstieg bei BC einige Arbitrage Trades als auch Antizyklische Trades (Grün - Sell) durchgeführt wurden.
> Man sieht zudem, dass die Coins die im Wert gefallen sind (VIA, BTCD, LTC, POT) von der Antizyklischen Strategie nachgekauft wurden (Orange - Buy).
> Warum sind so viele Antizyklische Buy gehäuft? Hab die Strategie nach einer Testperiode wieder aktiviert und was sich über die Tage davor "angestaut" hat, wurde dann ausgeglichen.




> Chart mit den letzten 48 Stunden Snapshot Daten vom Profit.
> Passend zu den Recent Trades kann man die Antizyklischen Käufe nachvollziehen




> Chart mit den letzten 48 Stunden Snapshot Daten vom aktuellen BTC Stand auf den Börsen
> Man kann sehen, dass trotz der Antizyklischen Käufe es kaum Bewegung im BTC bestand gab, das lag daran, dass zuvor ausgelöste Arbitragen viel kompensiert haben bzw. Orders zurückgezogen wurden
> Unten seht ihr das Logbuch, was hat der Bot getan




> Übersichtsseite was ist alles so beim Coin (BC) passiert





Hoffe euch gefällt das Projekt
Darkwinde
437  Local / Trading und Spekulation / Re: Tagebuch eines Bot Entwicklers on: December 31, 2014, 07:00:53 PM
ach und an dem Bot von Darkwinde wäre ich natürlich auch interessiert Wink
Ich nehme mal an man kann dann bei Erwerb auch selbst bestimmen, welche Coins gehandelt werden sollen...
und vor allem welche exchanges...
(nur die 3 - 4 üblichen oder mehr?)

Aktuell BTer, Bittrex, Poloniex und Cryptsy.
Weitere können aber bei Bedarf noch implementiert werden hatte aberbisher kein Bedarf.
Bin da flexibel was eure Wünsche anbelangt.

Bzw. wenn jemand die API Schnittstelle für Bot und Exchange schreibt integriere ich das gerne...
438  Local / Trading und Spekulation / Re: Tagebuch eines Bot Entwicklers on: December 31, 2014, 01:46:29 PM
sry für die unterbrechung =P

Immer her mit den Unterbrechungen Smiley klasse dass der Beitrag wieder eine hohe Besucherdichte hat.

ich kenn mich mit "rasperry" dingern nicht aus, weiß auch nicht wie die aussehen oderso, habe nur hier gelesen, dass man darauf einen Bot laufen lassen kann.
Was würdet ihr mir diesbezüglich empfehlen? Würde gerne meinen Python Bot dauerhaft laufen lassen, sobald er fertig ist. Ich vermute mal so ein Rasperry ist besser/günstiger als ein Server? Welcher Art von Rasperry wäre da empfehlenswert?  Was kann so ein Ding? Kann es auch mithilfe des Skripts Log Dateien erstellen, die ich dann auslesen/auf den PC übertragen kann?

edit: MySQL und diesen ganzen Kram bräuchte ich nur, wenn ich einen Server verwenden würde, oder? Aber du (Darkwinde) hast ja auch einen Rasberry, also wozu noch einen server? Oder wie darf ich das verstehen?
Raspberry geht gerade für Ressourcenarme aber dauerhafte Anwendungen extrem gut. Ich nutze ihn halt zum Minen, BOT oder gar als PayCoin Node. man muss halt nur etwas sich in Linux reinfummeln. War vor einem Jahr auch totaler DAU und mittlerweile schreibe ich Tutorials wie man so nen Node aufsetzten kann...bin bisserl verrückt ich weiß Cheesy

ich kenne mich mit Python nicht aus aber soweit ich weiß brauchste nur nebst nginx (als webserver) nur das Python Modul installieren und aktivieren. Dann sollte es gehen... Bitte Korrektur wenn ich mich irre Smiley

Das Ding kann alles was du ihm sagst und was die Linux Distribution hergibt ^^ Aber in deinem Fall Ja, würde das über Perl machen und dann auf einem network Share ablegen.

Das Raspberry wird dann zum Web und Datenbank Server.
Als Webserver nutze ich nginx und als Datenbank MariaDB (ehemals mySQL)

Edit: Wenn du ein NAS hast, hast du eine Ähnliche Konstellation. Da ist oft auch ein Linux drauf was man mit einigen Kniffen umfunktionieren kann. Und dort sind am Ende auch nciht mehr drauf als Linux, Webserver, Datenbank, SAMBA...



ach und an dem Bot von Darkwinde wäre ich natürlich auch interessiert Wink
Ich nehme mal an man kann dann bei Erwerb auch selbst bestimmen, welche Coins gehandelt werden sollen und muss nicht antizyklisch mit den von dir erwähnten Coins verfahren, richtig?
Korrekt. Du kannst jeden Coin nehmen der gegen BTC gehandelt wird. Zudem kannst du in der Config festlegen, ob du nur Arbitrage oder nur Anti Zyklisch oder beides zusammen machst. Ganz nach eigenem empfinden.
439  Local / Trading und Spekulation / Re: Tagebuch eines Bot Entwicklers on: December 31, 2014, 01:30:32 PM
Da sollten wir doch mal in Verhandlungen treten ;-)

Mitgelesen habe ich schon die ganze Zeit, nur letzlich nichts zu beitragen können.
Ich kenne mich mit PHP schon aus, habe aber keine Ahnung, wo ich anfangen müsste, deswegen würde mich dein Bot auf jeden Fall reizen ...


Bin auf deine PN gespannt Wink denke wir sollten den Beitrag damit nicht voll spamen Wink

Fragen rund um den Bot natürlich auch hier gerne für die Öffentlichkeit Smiley gibt sicher mehrere die ähnliche Fragen haben...


Edit:
So habe ich auch angefangen damals Smiley Bis ich den damaligen Bot so umgeschrieben hatt bis er mir das machte was ich alles wollte...naja dann war ich vom Programmieren so angefixt das ich selber gestartet habe meine Gedanken zu verwirklichen Smiley von daher Daumen hoch Smiley Wenn du fragen zum Einstieg hast danna uch her damit.




@Kalkulatorix: Ist das ok für dich oder soll ich eigenen Beitrag aufmachen?
440  Local / Trading und Spekulation / Re: Tagebuch eines Bot Entwicklers on: December 31, 2014, 01:20:39 PM
Was würdest du denn bei Lizenz 1 überhaupt ansetzen (auch in Euro) ?
Mich würd das ja schon interessieren.

+1

Huch, es gibt ja doch Mitleser hier Smiley hatte schon befürchtet bald mit Kalkulatorix alleien zu sein Smiley
Um das Thema ziere ich mich momentan bisserl um ehrlich zu sein Wink ist schon schwer die eigene Arbeit einzupreisen und auf der anderen Seite den Nutzern eine faire Chance zu bieten erstmal das Grundinvest auch zügig wieder raus zu haben. Natürlich geht bei mehr Coins auf den Exchanges das viel schneller, denke aber auch eher an so Kleininvester wie ich einer bin...sprich die das just for 4 machen...
Aber um auf deine Frage offen zu antworten, aktuell kreisen meine Gedanken um 0,5 BTC. Das würde sich also um die ~120€ pendeln.
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 [22] 23 24 25 26 27 28 29 30 31 32 33 34 35 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!