Pages:
Author

Topic: RollerBot - Alpha testing begins soon! - page 8. (Read 18583 times)

newbie
Activity: 5
Merit: 0
February 10, 2014, 03:06:33 PM
#46
I have sent PMs to those inquiring about beta testing

im also interested if testing spots are available
full member
Activity: 238
Merit: 100
February 10, 2014, 12:36:36 PM
#45
Jon

All exchanges?
which exchanges are covered by your system?

Maybe you can also charge users per exchange basis
Personally I only use a few main exchanges like Cryptsy, btc-e and Coinex for trading,
and I do not trade all the pairs.

I currently support MtGox, BTC-e, Bter, Cryptsy, Crypto-Trade, Coins-e, CoinEx, Bitstamp, C-Cex.io and Vircurex
I have plans of eventually supporting every exchange out there that exposes a full trade API, including some of the big hitters in Asia.

As far as the points system goes, imagine that you get 10 points for a certain fee.  Rules would be like:
*1 point for each exchange to run on
*1 point for each trade pair to run
*1 point for each trade plugin to run

With that example, 10 points could get you:

Cryptsy(1 point) running EMA(1 point) on LTC-BTC(1 point) and DOGE-BTC(1 point)
BTC-e (1 point) running Variance(1 point) and EMA(1 point) on EUR-USD(1 point), PPC-BTC(1 point), and XPM-BTC(1 point)

Basically you could build your strategy with the number of points allotted.  Of course, I will have higher tiers where more points will be included at a better cost-per-point, but I have a lot of details to work out yet.

Also keep in mind that I am building a full "strategy" system.  You could save the above example as "My 10-point BTC-e/Cryptsy strategy", and make one or more entirely different strategies and switch between them at any time.  The point won't be to lock anyone in to one strategy, only con help put a cap on the amount of load it puts on the servers.

I would imagine that most users will be like yourself, wanting to trade their favorite pairs in a few different exchanges.  But I also want to be prepared for the "Big dogs" that want o bite into everything they can.
full member
Activity: 238
Merit: 100
February 10, 2014, 12:26:42 PM
#44
Quote
This is not fast enough moving forward, so I'm going to be overhauling the cache system to spread the load among even more threads

This is a good idea in an ideal world, but are the exchanges going to be okay with you hammering the APIs in this fashion? The (public) orderbook APIs are usually more forgiving, but still, especially if

Quote
cache daemons will need to be spawned for each user as well

I could see exchanges starting to blacklist IPs.

Also, if it wasn't clear from my first post (likely), I would be interested in beta testing when things get that far.

I've got things hashed out a bit more.  The only APIs that I absolutely have to call even if nobody is using a certain exchange/tradepair is the trade data (to maintain my own tradebook on the back end fur the purpose of calculating slopes EMAs, etc against).  Since these tradebook API calls are almost always public calls, and since they normally keep a large span of time, I can call these infrequently when the backend determines that nobody is running a plugin against a specific exchange/tradepair.

Regarding orderbooks, I have no need to keep a local copy, so i can spawn those daemons as needed (In real world, there will be many currency pairs at any given time that simply won't be being used).

So basically, Based on whether a tradepair is being used or not:
-tradehistory daemons will kick into either high speed mode or slow speed mode
-orderbook daemons will either kick on or off as needed

As far as private API calls, all I really need is balance data and a data on the user's current open orders, so these calls will just be treated normally as I do now.

I have already been in talks with many of the exchanges and they know what I am doing and have a list of the IP addresses the daemons run on. I'm quite positive that this shouldn't be a problem.  If ever becomes one, I can simply launch daemons in different AWS zones to spread out among more IP addresses (though I don't foresee needing to happen at all)
legendary
Activity: 2114
Merit: 1002
February 10, 2014, 09:11:18 AM
#43
Jon

All exchanges?
which exchanges are covered by your system?

Maybe you can also charge users per exchange basis
Personally I only use a few main exchanges like Cryptsy, btc-e and Coinex for trading,
and I do not trade all the pairs.
member
Activity: 112
Merit: 10
February 10, 2014, 08:30:38 AM
#42
this is exciting although I did not understand all what you said some off it I did.  Cannot wait to see your baby in motion.  Grin
full member
Activity: 177
Merit: 100
February 10, 2014, 05:49:27 AM
#41
Quote
This is not fast enough moving forward, so I'm going to be overhauling the cache system to spread the load among even more threads

This is a good idea in an ideal world, but are the exchanges going to be okay with you hammering the APIs in this fashion? The (public) orderbook APIs are usually more forgiving, but still, especially if

Quote
cache daemons will need to be spawned for each user as well

I could see exchanges starting to blacklist IPs.

Also, if it wasn't clear from my first post (likely), I would be interested in beta testing when things get that far.
member
Activity: 99
Merit: 10
February 10, 2014, 02:50:11 AM
#40
very good work, will follow closely.
full member
Activity: 238
Merit: 100
February 09, 2014, 07:11:04 PM
#39
Excellent progress today.

I decided to do some tests of the API cacheing system today.  Up until now, I've only been cacheing the API calls needed to keep fresh data for the currencies that I've been trading.
Now I need to look ahead and start caching the API calls needed to get information on all trade pairs on all exchanges.
With my current system, it takes almost a minute to fetch all API calls from all exchanges.  This is not fast enough moving forward, so I'm going to be overhauling the cache system to spread the load among even more threads, and getting rid of disk-based cacheing all together in favor of a very fast in-memory cache using Amazon's ElistiCache service.  As soon as this is done, I'll start storing all trade data for all trade pairs in all exchanges to start building up historical data for when Rollerbot goes live. (I've currently been only saving trade data to the database for the pairs that I trade).  I'm also going to have to jump right onto implementing the user system, as cache daemons will need to be spawned for each user as well, for each exchange that they have set up.  Since I'll be working on the user system, I'll also go ahead and implement a strategy system so that different stragies (selected plugins and their settings) can be saved or restored at any time.

So for now while I implement these changes, I'm going to take RollerBot down so I can focus on getting these very important changes in.  The twitter feed will remain silent as well - but no worries, I'm sure after a week or so all of these goodies will be implemented and tested.  Hopefully I'll be working on the GUI shortly after that!

It is likely that an entire server will be needed just to handle the API call load, an entire server just to handle the cache system, and an entire server to host the database. A fourth elastic server will be used to spawn individual plugins for each user.  Since almost all of the heavy lifting will be handled by the other servers, I should be able to host hundreds of users per front-end server.
I've also been thinking of methods to have multiple pricepoints.  One method that I'm really liking is that you purchase the rollerbot service buy buying Points.  Each trade pair traded under a plugin will cost one point.  This way, I can have some cheap options for those who only wish to trade a few trade pairs (which can be switched around at will), and for those that wish to trade in many markets at once they will have options too.  This will ensure that I can pay for the provisions needed to host the service (I'd simply have to charge too much if every single user were to trade under 15 different exchanges and every market in each exchange).  This makes it fair for all users, as they will only be paying based on the provisions that I have to provide with the backend.  I'd love to hear everyone's thoughts on this...


Once I am done with the above changes and get some testing in, I will probably start the Beta team testing starting with the REMAP EMA plugin and Variance plugin.
legendary
Activity: 2114
Merit: 1002
February 09, 2014, 06:46:20 PM
#38
I have sent PMs to those inquiring about beta testing

I got it, thank you.
hero member
Activity: 756
Merit: 500
CryptoTalk.Org - Get Paid for every Post!
February 09, 2014, 04:47:25 PM
#37
I'd be interested in beta testing. I switched to using bots a couple of months back and I'm always on the look out for improvements.
full member
Activity: 238
Merit: 100
February 09, 2014, 04:06:34 PM
#36
Short term EMA testing is going very well!
I should be posting screenshots soon once a sell occurs, but running realtime 6 minute periods with a 4/8 EMA locked on to a nice FST trend on Cryptsy. I'll post screen shots once the trade completes.
EDIT:  Attaching screenshots

This is nothing amazing but it is a profit.  This was a short spike in FST price at Cryptsy today.  The REMAP EMA plugin would have caught the trend at the beginning, but I didn't even start trying the fast settings until the trend was half way up. Also, since this is a testing period, I purposely limited amount that could be spent in a single buy order.  If I would have had things set up before the uptrend started, and I wouldn't have limited my buy order size, this would have been a nice profit from a very short and fast EMA.

Here is the trend from Cryptsy. 

You can see that the trend was pretty short lived, but the realtime EMA of Rollerbot was able to lock onto the trend and ride it up (even though I got in a bit late)

Here are the notifications that were sent to my phone:
(I'm attaching a couple of screen shots so the entire history can be shown)
Initially you will see that the order was placed for 99.13648990 DOGE @ 0.00000873 (at the bottom of the screen)
Next, you can see that I got a notification that the order that was placed was actually executed at the exchange.
Then, at 3:26 you can see that the sell order was placed for 98.9382169202 @ 0.00000879.
Just after that, a separate sell order was created to get rid of extra holdings that I had that weren't part of the first original order.
Shortly after that, I get a full confirmation that a profit of 0.00000247 was made (this is after trade fees)
Lastly, the extra order that was placed to sell off extra FST holding that I had got a confirmation that order executed.



Now, here is a screen grab of the plugin daemon output.  You can see that FST is still dropping in this screenshot, but a message is displayed that there are no FST holdings to sell, so nothing happens at this point.
full member
Activity: 238
Merit: 100
February 09, 2014, 02:25:24 PM
#35
I ran across your bot on twitter (I periodically search for likely outputs from trading bots on twitter so keep tabs on the 'opposition'); this looks like a pretty competent outfit. If I ever find a bot that I think's better than mine, I'd cheerfully switch to using it.

Given that you are going to be opening it up to users, presumably users will simply have to trust you with their API keys?

The twitter feed has been down for a few days so I can test some new features, but glad to hear you found out about Rollerbot through Twitter.

Yes, you are most correct that there will have to be a level of trust from users, this is inevitable.   API keys will be stored in encrypted form in the database to protect them in case the database were ever dumped somehow by a third party (even though security is top priority, I must also consider all possibilities for protection of the userbase). Rest assured that I have no interest in breaking the trust of future users.  Aside from that, most exchanges don't allow withdraws from the API anyways.

Thanks for stopping in
full member
Activity: 177
Merit: 100
February 09, 2014, 01:28:43 PM
#34
I ran across your bot on twitter (I periodically search for likely outputs from trading bots on twitter so keep tabs on the 'opposition'); this looks like a pretty competent outfit. If I ever find a bot that I think's better than mine, I'd cheerfully switch to using it.

Given that you are going to be opening it up to users, presumably users will simply have to trust you with their API keys?
full member
Activity: 238
Merit: 100
February 09, 2014, 01:05:01 PM
#33
Just an update for the day.
I'm working on the settings engine improvements, but I also have a few more things on the slate.

To fully explain, I'll have to describe a concept that Rollerbot uses.
Plugins can operate as DEO (Double-ended orders) or SEO (Single-ended orders). A DEO plugin places both the buy and sell orders at the same time (I.e. they are stored in the database referencing eachother, thus being designated as Double-ended).  With SEO, only one side of the order is actually placed in a market (Either a buy or a sell).  It is stored in the database as being what i call "Uncomplimented", meaning it does not reference an opposite order, because it hasn't been placed yet.  With SEO plugins, they calculate on-the-fly when to complete the order, and the complimenting order is placed when needed.

The nice thing about DEO is that you know when the order is placed how much profit will be made if both sides go through.  The bad thing is, some DEOs go stale and only one side goes through.  It's kind of hard to do a stop loss strategy with a fully committed DEO.  The plus side, is that since both orders are placed, then the funds are put on hold at the exchange level, so you don't have to worry about different plugins stomping on eachother's feet.

With SEOs, uncomplimented orders must be manually tracked in each market, so that the appropriate funds will be available to them when it's time for the complimenting order to go through.  This is a very complex task, and one already handled by RollerBot.  Here is an example that may make sense:
Lets say you start out with 1.00 BTC, and the REMAP EMA plugin buys 100 XCoins for 0.5 BTC (as an SEO).  Eventually to make a profit, you will have to sell those coins (minus the buy fee that was originally taken out).  If another plugin were to have already sold some or all of those XCoins, then your original REMAP SEO buy order will never compliment and become stale.  On top of that, other plugins could possibly sell those XCoins cheaper than what they were bought for, causing a loss instead of a profit.

With the above in mind, I'm going to be improving the SEO logic even more and adding failsafe checking to ensure things like this never happen.  If you've ever wondered why other bots have a hard time supporting multiple trading algorithms and multiple exchanges, this is a big part of the reason.



I will also be changing the Variance trading plugin from a DEO plugin to an SEO plugin so that real STOPS can be put in place, as well as to maximize profits.

Sounds like a fun day
member
Activity: 112
Merit: 10
February 09, 2014, 04:05:45 AM
#32
I have decided to fully commit to releasing RollerBot commercially.  The first post of this thread has been updated.

Awesome to hear. Can you hint a bit about the pricing models yet?

Yes, there will be a flat pricing model (Per month, Per quarter, per year)
And a percentage pricing model.  Details aren't 100% complete yet, but basically you use rollerbot for 30 days, then you have a 5 day grace period to submit your payment based on the profits from those 30 days.  I'm so confident that profit will be made that I will take the risk - note though that risk comes at a premium. Also, there will only be a limited number of "pay by percent" slots open at a time on a first-come first serve basis.

My guess is that most will want to start out with a pay-by-percent model, but will quickly move to the more affordable up-front options.

Yes this sounds fair and I will do a full review for you.  My friend who writes games reviews will be interested as well.  Even if im a tester for you and it works I will probably purchase it as well.  Always good to reward innovation.
sr. member
Activity: 350
Merit: 254
February 09, 2014, 03:41:23 AM
#31
Cool,,, will check it out.
newbie
Activity: 4
Merit: 0
February 08, 2014, 11:58:46 PM
#30
Please add me to beta

Thanks
full member
Activity: 238
Merit: 100
February 08, 2014, 08:50:46 PM
#29
Made some good progress today.  The REMAP plugin is shaping up nicely and operating as expected.

Tomorrow will be spent improving on the settings engine even more.  I'm at a critical point where I need to start thinking forward when it comes to supporting multiple users, and now is the time to implement everything needed in the background.  Hopefully I can do this all tomorrow, but my worst case is 2-3 days to get things redone where they need to be.  After that, I'll put a little more attention into the REMAP plugin and then start working on the MTT plugin (Modified Turtle Trader).  Lots of good stuff coming this week!

As far as alpha/beta testers, I'm hoping to have them all running Rollerbot within a month, and a full release in 3 months.
full member
Activity: 238
Merit: 100
February 08, 2014, 07:19:44 PM
#28
I have decided to fully commit to releasing RollerBot commercially.  The first post of this thread has been updated.

Awesome to hear. Can you hint a bit about the pricing models yet?

Yes, there will be a flat pricing model (Per month, Per quarter, per year)
And a percentage pricing model.  Details aren't 100% complete yet, but basically you use rollerbot for 30 days, then you have a 5 day grace period to submit your payment based on the profits from those 30 days.  I'm so confident that profit will be made that I will take the risk - note though that risk comes at a premium. Also, there will only be a limited number of "pay by percent" slots open at a time on a first-come first serve basis.

My guess is that most will want to start out with a pay-by-percent model, but will quickly move to the more affordable up-front options.
sr. member
Activity: 509
Merit: 250
Disrupt the banking system!
February 08, 2014, 04:50:17 PM
#27
Can't wait to see this pot in action, note to everyone, consider this an investment.
Pages:
Jump to: