Bitcoin Forum
November 19, 2024, 11:35:36 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
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 »
  Print  
Author Topic: Isis ATP [Automated Trading Platform] - Discussion  (Read 45225 times)
scrybe
Sr. Member
****
Offline Offline

Activity: 350
Merit: 250



View Profile
November 14, 2012, 04:25:59 AM
 #261

Thanks Aido!

"...as simple as possible, but no simpler" -AE
BTC/TRC/FRC: 1ScrybeSNcjqgpPeYNgvdxANArqoC6i5u Ripple:rf9gutfmGB8CH39W2PCeRbLWMKRauYyVfx LTC:LadmiD6tXq7gFZvMibhFUZegUHKXgbu1Gb
daybyter
Legendary
*
Offline Offline

Activity: 965
Merit: 1000


View Profile
November 14, 2012, 09:42:03 AM
 #262

Care to share?

I can show you my sources, but I guess it'll take you too much time to study them?

Aido
Sr. Member
****
Offline Offline

Activity: 248
Merit: 252


1. Collect underpants 2. ? 3. Profit


View Profile
November 14, 2012, 10:44:39 AM
Last edit: November 14, 2012, 11:23:39 AM by Aido
 #263

I'm going to tidy up the switches giving options to disable arbitrage, disable 'normal' trading or run in simulation mode for both.

We already have --simulation-mode and --use-arbitrage. Simulation mode does not affect arbitrage at the moment. What switch name would people suggest for non-arbitrage trading trades? --use-normal-trades is a bit long and I don't like --use-normal i.e. what's normal? I am just looking for a simple but descriptive term to differentiate arbitrage trading from the other type.

Once I have the swtches working I'll look at putting them into the config file.

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

Activity: 965
Merit: 1000


View Profile
November 14, 2012, 12:43:27 PM
 #264

I was told, that it's 'technical trading'. But I don't speak english, so I just accepted the term.

Btw: sorry for my late reply on your query for my sources, but I just overlooked that line in your response. Sad  Or did you edit it? As I said: I can give you the sources, but it's > 100 classes and with the required jars an 8.8 MB zip file. And it's far from being complete. I'm still working on the trading interface and only the gox and btc-e implementation are halfway complete.

Aido
Sr. Member
****
Offline Offline

Activity: 248
Merit: 252


1. Collect underpants 2. ? 3. Profit


View Profile
November 14, 2012, 02:50:16 PM
 #265

No worries daybyter.

I think another correct term is "trend following". Well, that's what wikipedia calls it anyway.

You code is only stored local, you haven't used github or anything like that?

As you stated, 100 plus classes would take me a long time to understand. And as a java novice I may not ever understand it. I think I'll concentrate on understanding how IsisATP does its thing first before biting off more than I can chew.

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

Activity: 248
Merit: 252


1. Collect underpants 2. ? 3. Profit


View Profile
November 14, 2012, 03:36:54 PM
 #266

--use-trend it will be.

Now, to code it.................

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

Activity: 965
Merit: 1000


View Profile
November 14, 2012, 04:40:36 PM
 #267

Hi!

You code is only stored local, you haven't used github or anything like that?

As you stated, 100 plus classes would take me a long time to understand. And as a java novice I may not ever understand it. I think I'll concentrate on understanding how IsisATP does its thing first before biting off more than I can chew.

Since I'm the only developer, I don't use svn or git yet. Just drop me a PM, if you want to check the sources, and I'll upload it on one of my servers and give you temporary URL to download it.
But, as I said, it's quite rough yet and work in progress. I'm still struggling with some method to get the automatic trading going, so I guess I'm behind the Isis-project.

Ciao,
Andreas

Aido
Sr. Member
****
Offline Offline

Activity: 248
Merit: 252


1. Collect underpants 2. ? 3. Profit


View Profile
November 16, 2012, 01:25:55 AM
 #268

More updates at https://github.com/aido/IsisATP/commits/master:

commit ee4bf173b02d75048b966aece7fc0007508bc371

    Added --use-trend=true/false commandline parameter (default true)


This enables/disables trend following trades as discussed in previous posts.


commit 978b03b29aaf5e7b3e1701a29c7067892607de84

    Moved Trading Agent start() from TrendObserver class to Application class


This was done to make above commit possible and really stretched my nascent java coding ability.


commit eed78364569b2715fe7bc7ed773b66dcd9795a73

    Added more generic way of getting exchange hostname and port for dropped connection test


Tidied up a previous fix. Still not 100% happy though.



Commits are in reverse chronological order because that's how git log command prints them!

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

Activity: 7
Merit: 0



View Profile
November 24, 2012, 05:49:50 PM
 #269

One thing I would love to see is a freaking GUI. I may be alone in this, but having a chart tracking the prices, and a GUI that would allow me to take over manual controls or to give up control for the different trading engines, just basically allowing me to alter the configuration on the fly, without having to manually edit the files, would be nice.
daybyter
Legendary
*
Offline Offline

Activity: 965
Merit: 1000


View Profile
November 24, 2012, 08:01:53 PM
 #270

Take a look at the btc-e.com website. I like their GUI a lot, so I tried to copy it in my app:




new overcomer
Newbie
*
Offline Offline

Activity: 9
Merit: 0


View Profile
November 28, 2012, 11:09:48 PM
 #271

Hello there everyone!

So I happened to run across this project you've all been working on and it looks extremely promising.  I've been running it for twenty four hours straight or so (hate to say but it's deadlocked approx 3-4 times in 24hrs - using latest Aido build).  While reading through this entire thread it seems there are some very dedicated individuals to seeing this go somewhere.  If you guys are interested I'd be happy to jump in with my developer hat to help where desired.

I did notice some confusing and strange behavior.  It seems like through all the buying and selling it's doing all it seems to manage to do is slowly lose money over time.  Is this a problem with the algorithm or the tweaking of it's variables?  I'm a developer, not an economist. Smiley  Running with arbitrage disabled, algorithm 2.
Aido
Sr. Member
****
Offline Offline

Activity: 248
Merit: 252


1. Collect underpants 2. ? 3. Profit


View Profile
November 29, 2012, 02:01:40 AM
 #272

Hi new overcomer,

Yeah, I think the algos need to be looked at alright. Maybe they just need a bit of tweaking rather than a total overhaul. I've been dancing around the edges of this part of the code.

Any suggestions for improvement?
Feel free to use the issues page on github to report any bugs or issues: https://github.com/aido/IsisATP/issues. I suppose it's a better way to track these sort of things. I see there are currently 0 issues, so the code must be perfect Smiley

At first I didn't understand how the original Isis arbitrage algoithm could work. It seemed the decision to trade is based solely on largest and smallest exchange rate between different currencies and BTC. On closer inspection I now think it works OK. I temporarily changed the arbitrage decision to use more complicated edge weighted directed graph and Bellman-Ford shortest path algorithms (don't be fooled by my use of these terms, I am neither coder nor mathematician; rather, Google is my friend). The end result seemed to be the same as the original algo so I quickly dropped that approach.

You also mention a deadlock. Are you sure it's a deadlock causing the problem? I recently changed the Ticker Manager code to use streaming instead of polling. I think the socketIO connections could be dropping. I currently don't have any check to test and reconnect a dropped socket. I hope to add this functionality as soon as it is added to XChange:

https://github.com/timmolter/XChange/issues/6

Maybe if someone 'nudged' the developer of XChange it may encourage a speedy implementation of this functionality in his code.

When I get a chance I'll test for deadlocks also, just in case. I had already written a handy script to make it a lot easier to test for deadlocks in the original Isis code.


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

Activity: 96
Merit: 10



View Profile
November 29, 2012, 01:41:00 PM
Last edit: December 03, 2012, 08:43:03 AM by Uuno
 #273

This is actually very cool. I've been searching for a bot to do some bitcoin arbitrage and this seems to be the best option what I've found. Thanks for nomorecoin, aido and others too, who are helping for developing this. I'm going to test this very soon!

Send all your money here: 1CRTegc4fdeJYwTPGYTuGq3nFBbgvHc23c
Aido
Sr. Member
****
Offline Offline

Activity: 248
Merit: 252


1. Collect underpants 2. ? 3. Profit


View Profile
November 29, 2012, 02:48:38 PM
 #274

I will look at implementing something that will automatically switch algorithms based on market conditions. If market is flat or steadily trending in one direction use nomorecoins algo but if the market is volatile use the Isis' trending algo.

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

Activity: 965
Merit: 1000


View Profile
November 29, 2012, 04:38:27 PM
 #275

I wonder, if there's a way to describe a trading strategy in a system independent, more descriptive, way...

daybyter
Legendary
*
Offline Offline

Activity: 965
Merit: 1000


View Profile
November 29, 2012, 05:43:21 PM
 #276

Yeah, I implemented this more or less the same way in my ChartAnalyzer class. But I meant the actual trading algo. I'm working with rule sets at moment to separate the trading code from the actual trade app. Would be cool to end up with a domain specific language to describe the actual trading.

danieldaniel
Hero Member
*****
Offline Offline

Activity: 854
Merit: 1000


View Profile
November 29, 2012, 05:52:37 PM
 #277

So has anyone completed a "fixed" version of this?

new overcomer
Newbie
*
Offline Offline

Activity: 9
Merit: 0


View Profile
November 29, 2012, 06:34:59 PM
 #278

I will look at implementing something that will automatically switch algorithms based on market conditions. If market is flat or steadily trending in one direction use nomorecoins algo but if the market is volatile use the Isis' trending algo.
I was thinking the exact same thing.

I don't know if this is related or not (I'm sure our financial experts will know) but I was contemplating yesterday looking at two bands.  One a wide band looking at the entire range from low to high for X time period AND Y number of transactions.  (Four transactions in an hour has a very different impact on our math vs 4000 transactions in an hour in terms of projecting accurately.)  And a short band to look at K time period and J transactions which would look at a % above and below our SMA.  If I'm not mistaken this would help us more accurately track quick volatility and jump in on trades when someone snatches up or sells off a bunch of it quickly.


So has anyone completed a "fixed" version of this?
Hm, considering such a short window since it has been discussed, no.  There is a LOT of work to do.



In other news, I think it might be a good idea to actually set up a forum for serious development talks and discussion instead of using this single thread.  I have the resources to set one up right now.

@Aido: Do you want me to just push code fixes as bugs on the tracker and you can push them into the repository?
new overcomer
Newbie
*
Offline Offline

Activity: 9
Merit: 0


View Profile
November 29, 2012, 06:44:07 PM
 #279

Any suggestions for improvement?
Feel free to use the issues page on github to report any bugs or issues: https://github.com/aido/IsisATP/issues. I suppose it's a better way to track these sort of things. I see there are currently 0 issues, so the code must be perfect Smiley

...

You also mention a deadlock. Are you sure it's a deadlock causing the problem? I recently changed the Ticker Manager code to use streaming instead of polling. I think the socketIO connections could be dropping. I currently don't have any check to test and reconnect a dropped socket. I hope to add this functionality as soon as it is added to XChange:

https://github.com/timmolter/XChange/issues/6

Maybe if someone 'nudged' the developer of XChange it may encourage a speedy implementation of this functionality in his code.

When I get a chance I'll test for deadlocks also, just in case. I had already written a handy script to make it a lot easier to test for deadlocks in the original Isis code.
Well to be honest it's going to take me a little while to get my head around the project currently.  I can't just step in and know what you guys have spent months working on.  Smiley  I did notice some things that can be cleaned up nicely and quickly though which should make every ones lives easier.

I suppose you're right as I have no way of knowing until I step through the debugger to see where it's hanging whether or not it's deadlocking or just dropping connection.  I forgot this program doesn't take user input while the feed is going so 'deadlocking' may not be the best term.   .... so you're saying all the market connection and data streaming is coming from a different project?  Oh bugger, this could make life interesting if we have to start making our own fixes AND keep track with these other projects.
daybyter
Legendary
*
Offline Offline

Activity: 965
Merit: 1000


View Profile
November 29, 2012, 07:27:13 PM
 #280

In other news, I think it might be a good idea to actually set up a forum for serious development talks and discussion instead of using this single thread.  I have the resources to set one up right now.

Would non-isis users be allowed to join such a forum? I'm interested in a working trade algo, too.

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 »
  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!