Bitcoin Forum
June 30, 2024, 01:34:31 PM *
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: ncurses based MtGox live monitor and trading-bot-framework  (Read 33819 times)
c0inbuster
Member
**
Offline Offline

Activity: 105
Merit: 10



View Profile WWW
May 12, 2013, 08:30:10 AM
 #181

New post for zipline / Quantopian here
https://bitcointalk.org/index.php?topic=202808.new#new

Download free softwares! - crypto mining profit calculator - crypto triangular arbitrage tools - crypto stocks tools...
https://sites.google.com/site/working4coins/
K1773R
Legendary
*
Offline Offline

Activity: 1792
Merit: 1008


/dev/null


View Profile
June 16, 2013, 08:43:19 PM
 #182

just saw this, whats that?
Code:
### (https) calling https://data.mtgox.com/api/2/money/info                                                                                                                                                                                  
{u'success': False, u'message': u'CONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.', u'
id': u'info', u'token': u'unknown_error', u'op': u'remark'}
this happens for everything i wanna do.
err, seems mtgox is stuck. dont mind this post then Wink

[GPG Public Key]
BTC/DVC/TRC/FRC: 1K1773RbXRZVRQSSXe9N6N2MUFERvrdu6y ANC/XPM AK1773RTmRKtvbKBCrUu95UQg5iegrqyeA NMC: NK1773Rzv8b4ugmCgX789PbjewA9fL9Dy1 LTC: LKi773RBuPepQH8E6Zb1ponoCvgbU7hHmd EMC: EK1773RxUes1HX1YAGMZ1xVYBBRUCqfDoF BQC: bK1773R1APJz4yTgRkmdKQhjhiMyQpJgfN
whydifficult
Sr. Member
****
Offline Offline

Activity: 287
Merit: 250



View Profile WWW
June 18, 2013, 06:24:44 PM
 #183

Code:
### (https) calling https://data.mtgox.com/api/2/money/info                                                                                                                                                                                  
{u'success': False, u'message': u'CONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.', u'
id': u'info', u'token': u'unknown_error', u'op': u'remark'}

That is an error straight from MtGox.

Gekko a nodejs bitcoin trading bot!
Realtime Bitcoin Globe - visualizing all transactions and blocks
Tip jar (BTC): 1KyQdQ9ctjCrGjGRCWSBhPKcj5omy4gv5S
K1773R
Legendary
*
Offline Offline

Activity: 1792
Merit: 1008


/dev/null


View Profile
June 19, 2013, 03:32:55 AM
 #184

yea, as i said "dont mind this post" Tongue
was about to paste here in case it happens only for me, but well everyone had the json error obviously.

[GPG Public Key]
BTC/DVC/TRC/FRC: 1K1773RbXRZVRQSSXe9N6N2MUFERvrdu6y ANC/XPM AK1773RTmRKtvbKBCrUu95UQg5iegrqyeA NMC: NK1773Rzv8b4ugmCgX789PbjewA9fL9Dy1 LTC: LKi773RBuPepQH8E6Zb1ponoCvgbU7hHmd EMC: EK1773RxUes1HX1YAGMZ1xVYBBRUCqfDoF BQC: bK1773R1APJz4yTgRkmdKQhjhiMyQpJgfN
supert
Full Member
***
Offline Offline

Activity: 160
Merit: 100



View Profile
June 25, 2013, 02:24:32 PM
 #185

prof7bit, would you consider supporting any other exchanges, esp. bitstamp? Even in a partial way?

I am getting a bit nervous about mtgox's long term chances of survival.

nii236
Member
**
Offline Offline

Activity: 85
Merit: 10


View Profile
July 09, 2013, 07:09:36 AM
 #186

Is there a way to do market orders or "all in" orders? I can't do it easily with the current goxtool as I have to type in USD price and quantity of BTC.

Is there a way for goxtool to:

  • Calculate how many BTC given a certain amount of USD using the market price?
  • Calculate how much USD given a certain amount of BTC using the market price?

Once I have this number I can offset accordingly.
Aido
Sr. Member
****
Offline Offline

Activity: 248
Merit: 250


1. Collect underpants 2. ? 3. Profit


View Profile
July 09, 2013, 07:39:34 AM
 #187

Here's my 'all in' version of prof7bit's original _stoploss.py:

https://gist.github.com/aido/5623833

I have a few other ones at https://gist.github.com/aido/public

Interesting Bash command line, try it Wink:
bitcoin-cli sendtoaddress 1Aidan4r4rqoCBprfp2dVZeYosZ5ryVqH6 `bitcoin-cli getbalance`
nii236
Member
**
Offline Offline

Activity: 85
Merit: 10


View Profile
July 09, 2013, 09:37:43 AM
 #188

Thanks! AidoATP rocks too by the way.  Wink

Nice, I think the _panic.py is what I need.
c0inbuster
Member
**
Offline Offline

Activity: 105
Merit: 10



View Profile WWW
October 13, 2013, 07:15:52 AM
 #189

Hi,

it is unfortunate that this project does not advance much. Maybe a decoupling of features is required. Have you considered using an Advanced Message Queuing Protocol http://fr.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol (AMQP like RabbitMQ http://www.rabbitmq.com/) ?

Kind regards

Download free softwares! - crypto mining profit calculator - crypto triangular arbitrage tools - crypto stocks tools...
https://sites.google.com/site/working4coins/
nanobtc
Hero Member
*****
Offline Offline

Activity: 601
Merit: 610



View Profile WWW
October 21, 2013, 04:18:47 AM
 #190

prof7bit, thank you for your work. goxtool + balancer.py has been good to me. I am not a good manual day-trader, but balancer.py has been. Donation sent.

Lennon: "free as a bird"
JWU42
Legendary
*
Offline Offline

Activity: 1666
Merit: 1000


View Profile
November 10, 2013, 03:12:03 PM
 #191

Sad this has died down but still working...

Can anyone advise how to increase the number of rows visible at the bottom.  It looks like 8 is the default - would like to increase to 12 or so.

I have peaked into the files and cannot find it.

TIA!

prof7bit (OP)
Hero Member
*****
Offline Offline

Activity: 938
Merit: 500


https://youengine.io/


View Profile WWW
November 10, 2013, 04:03:22 PM
 #192

in goxtool.py around line 48 there are the sizes defined

Note that after changing your local copies of the files you might need a local git branch or git stash to be able to continue pulling and merging future updates of goxtool (sounds more complicated than it actually is)

JWU42
Legendary
*
Offline Offline

Activity: 1666
Merit: 1000


View Profile
November 10, 2013, 04:09:09 PM
 #193

Not sure how I missed that  Embarrassed

Thanks!!

frankenmint
Legendary
*
Offline Offline

Activity: 1456
Merit: 1018


HoneybadgerOfMoney.com Weed4bitcoin.com


View Profile WWW
November 14, 2013, 05:15:29 AM
Last edit: November 14, 2013, 06:42:38 AM by frankenmint
 #194

in goxtool.py around line 48 there are the sizes defined

Note that after changing your local copies of the files you might need a local git branch or git stash to be able to continue pulling and merging future updates of goxtool (sounds more complicated than it actually is)


Wish I did this 6 months ago...so I'm trying to run it using cygwin and I have everything setup, but when I try to use it, its is like the bash window doesnt move forward after entering in:

  python goxtool.py --protocol=socketio --use-http


It just goes to a new line.  Dont know what else I could be missing  Huh


nanobtc
Hero Member
*****
Offline Offline

Activity: 601
Merit: 610



View Profile WWW
November 29, 2013, 08:18:29 PM
 #195

No trading fees on Gox till Monday (Tokyo time). If you're running balancer.py this could be a good opportunity to set your distance as small as possible. You don't want it placing orders smaller than .01 or Gox will just round them off.

frankenmint, I'm not familiar with running Goxtool in Cygwin. It may not be finding the path, even though it looks like you are in the goxtool directory.
Try specifying ./goxtool.py as part of your command (preface goxtool.py with dot slash)?

Lennon: "free as a bird"
prof7bit (OP)
Hero Member
*****
Offline Offline

Activity: 938
Merit: 500


https://youengine.io/


View Profile WWW
December 11, 2013, 11:27:05 PM
 #196

please

git pull

and then run with

--protocol=pubnub

because websocket is currently down. Implemented this in a hurry, might still be buggy but seems to work for me. Will fix bugs later as they become known.

Aido
Sr. Member
****
Offline Offline

Activity: 248
Merit: 250


1. Collect underpants 2. ? 3. Profit


View Profile
December 11, 2013, 11:37:39 PM
 #197

Seems to be working fine.

I'm impressed prof7bit. Very quick turnaround, thanks.

Interesting Bash command line, try it Wink:
bitcoin-cli sendtoaddress 1Aidan4r4rqoCBprfp2dVZeYosZ5ryVqH6 `bitcoin-cli getbalance`
piramida
Legendary
*
Offline Offline

Activity: 1176
Merit: 1010


Borsche


View Profile
December 18, 2013, 10:33:43 PM
 #198

To add to prof7bit's awesome opensource, posted the bot I'm using: https://bitcointalk.org/index.php?topic=376352.new#new

Based on the balancer bot but different logic - trading inside a predefined price range buying below current price selling higher; since it sets orders on many levels across the range, is pretty resilient to gox lag spikes and API delays. Does not need balancing, uses all fiat in equal increments and the same with BTC, amounts automatically balance out after several spikes.

It can go full-BTC or full-FIAT, so this bot definitely requires supervision - you set it's trading ranges, you can select how aggressive it will be. Setting a range of 0-10000 would be really conservative, and using something like 450-900 as I do now would yield the most.

Testing it with significant deposit for several weeks, does not lose orders, is stable (mainly due to goxtool's architecture and stability, of course), worked really well during that crash.

i am satoshi
opinologo
Newbie
*
Offline Offline

Activity: 19
Merit: 0



View Profile
January 19, 2014, 02:00:13 PM
 #199

@prof7bit I noticed that Goxtool goes to great lengths identifying self orders but according to: https://bitbucket.org/nitrous/mtgox-api#markdown-header-moneyinfo MONEY/ORDER/ADD should return "success" (or error) along with the the OID (order identifier). I still didn't try sending orders, but I am wondering if it is possible to identify the Bot's orders when you are sending them.
prof7bit (OP)
Hero Member
*****
Offline Offline

Activity: 938
Merit: 500


https://youengine.io/


View Profile WWW
January 19, 2014, 03:46:09 PM
 #200

@prof7bit I noticed that Goxtool goes to great lengths identifying self orders but according to: https://bitbucket.org/nitrous/mtgox-api#markdown-header-moneyinfo MONEY/ORDER/ADD should return "success" (or error) along with the the OID (order identifier). I still didn't try sending orders, but I am wondering if it is possible to identify the Bot's orders when you are sending them.

Initially (early versions of goxtool) only used the streaming API to send orders, so it all happened asynchronously, the function call (buy, sell, cancel) did immediately return without any feedback. When I later implemented the http api I made it behave the same way, so all existing bots did not experience any different behavior when goxtool was switched to http api, the call still immediately returns while a separate thread is trying to do the http requests. As soon as the http response is received it will put the order into the owns list and fire a bunch of signals while the order is graduating from acked to pending to open.

Its all centered around the idea that nothing you do within your bot should ever block (so you should never wait for a http request to return) because that would block the entire client because only exactly one thread is allowed to be inside a signal call at any given time, any other thread in goxtool that attempts to emit a signal too will have to wait until all slots of the previous signal have returned. Signals can be emitted by the stream receive thread, the http thread and the main thread (keypress signals) and none of them can ever be processed simultaneously, they will all run into the global signal lock and wait until your strategy (or any other component of goxtool/goxapi) returns from the slot it is currently processing.

Sou you should not attempt to program your strategy in an imperative sequential manner, you should instead move the stuff that needs to happen after the order has been placed into the owns_changed slot or other slots that are appropriate. I admit that this might make some things more complicated but I don't see any easy way around this. If you absolutely cannot avoid it to do things in a sequential manner then you might try to start a new separate thread that does it and which calls the protected (prefixed wth "_") blocking http request methods directly.

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!