Pages:
Author

Topic: Isis ATP [Automated Trading Platform] - Discussion - page 26. (Read 45225 times)

legendary
Activity: 1358
Merit: 1002
I'm down 0.30 BTC. No profit whatsoever =/
The only one profiting so far is MtGox lol
sr. member
Activity: 290
Merit: 250
I've just been letting it run since yesterday afternoon ( I did apply the latest commit this AM).

My account to start:

0.12669580 BTC $0.00 USD

Currently:

0.15651580 BTC  $2.05721 USD

Really hope to get a chance to dig into this this weekend.

Thanks to Isis for an interesting project!

Still trying to find my prefs file on my Mac  Undecided

sr. member
Activity: 252
Merit: 250
Inactive
For fun I decided to create a new branch and modify the application to look at crosspair arbitrage.

Let me know if anyone is interested in testing this branch.  


I'm interested.
zaj
member
Activity: 103
Merit: 10
Its dash dash debug dash live equals true
Need both dashes at the front and the one in the middle.

yes just found out at the same time, im a retard Sad
full member
Activity: 154
Merit: 102
Its dash dash debug dash live equals true
Need both dashes at the front and the one in the middle.
zaj
member
Activity: 103
Merit: 10
for me it has been selling 0.01 coins for the 10 hours all time, that is normal behaviour i hope? :p

If you're running the latest version which was uploaded a few hours ago and its still doing that you may need to restart with --clear-config=true since there are some new options.
Make sure maxbtc is a reasonable level.  If you have it set to 0.01 its going to trade a single bitcent ad nauseum forever.

If it is still doing it, check your btc balance and make sure you actually have some.
In the current market as of this moment, anything less than 10btc and it will be trading at the minimum.  The current trend has been treading water for about the last 8 hours, in my case more sells than buys.  But then again I didn't start with much to begin with.



i've reset it but if i launch it now it does nothing :x

Code:
C:\Program Files\Java\jdk1.6.0_21\bin>java -jar isis.jar debug-live=true
nullException in thread "main" java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoa
der.java:58)
Caused by: java.lang.NullPointerException
        at org.open.payment.alliance.isis.atp.Application.showAgreement(Applicat
ion.java:112)
        at org.open.payment.alliance.isis.atp.Application.start(Application.java
:76)
        at org.open.payment.alliance.isis.atp.Application.main(Application.java:
54)
        ... 5 more

C:\Program Files\Java\jdk1.6.0_21\bin>java -jar isis.jar
nullException in thread "main" java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoa
der.java:58)
Caused by: java.lang.NullPointerException
        at org.open.payment.alliance.isis.atp.Application.showAgreement(Applicat
ion.java:112)
        at org.open.payment.alliance.isis.atp.Application.start(Application.java
:76)
        at org.open.payment.alliance.isis.atp.Application.main(Application.java:
54)
        ... 5 more
sr. member
Activity: 290
Merit: 250
Is there a way to edit the config using a text editor?
It's a pain to config everything when you just want to change the algorithm or a single value.
Or maybe that's just the way I'm used to do stuff lol

Yes on linux it will be in the .java folder under your home directory
 
Code:
~/.java/.userPrefs/org/open/payment/alliance/isis/atp/prefs.xml

For windows it's going to be somewhere in the registry, just search for your API key.

But I'm having trouble finding it on my Mac
BCB
vip
Activity: 1078
Merit: 1002
BCJ
where is the account config file.

With the latest version overwrite it after cloning?
full member
Activity: 154
Merit: 102
for me it has been selling 0.01 coins for the 10 hours all time, that is normal behaviour i hope? :p

If you're running the latest version which was uploaded a few hours ago and its still doing that you may need to restart with --clear-config=true since there are some new options.
Make sure maxbtc is a reasonable level.  If you have it set to 0.01 its going to trade a single bitcent ad nauseum forever.

If it is still doing it, check your btc balance and make sure you actually have some.
In the current market as of this moment, anything less than 10btc and it will be trading at the minimum.  The current trend has been treading water for about the last 8 hours, in my case more sells than buys.  But then again I didn't start with much to begin with.

zaj
member
Activity: 103
Merit: 10
for me it has been selling 0.01 coins for the 10 hours all time, that is normal behaviour i hope? :p
full member
Activity: 154
Merit: 102
What information do you want reported?

After each trade it shows a profit & loss.
I'm looking for a daily PL after about 24 hrs of run time.

For instance after 6hrs of run time (which was the last time I had any bitcoins)...

Code:
Sep 17, 2012 6:29:52 AM org.open.payment.alliance.isis.atp.TradingAgent marketOrder
INFO: Successfully sold 0.01 at current market price.
Sep 17, 2012 6:29:52 AM org.open.payment.alliance.isis.atp.TradingAgent marketOrder
INFO: Current P/L: BTC -0.25585187 %-96.81128600
Sep 17, 2012 6:29:52 AM org.open.payment.alliance.isis.atp.TradingAgent marketOrder
INFO: Current P/L: USD 4.16889 %7.78400
Sep 17, 2012 6:29:52 AM org.open.payment.alliance.isis.atp.TradingAgent marketOrder
INFO: AccountInfo [username=isis, wallets=[Wallet [balance= BTC 0.0084271], Wallet [balance= USD 57.72266], Wallet [balance= EUR 0.09964], Wallet [balance= GBP 0.07921], Wallet [balance= AUD 0.22792], Wallet [balance= CAD 0.21845], Wallet [balance= CHF 0.10945], Wallet [balance= JPY 9.773], Wallet [balance= CNY 0.72304], Wallet [balance= DKK 0.7253], Wallet [balance= HKD 9.80315], Wallet [balance= NZD 0.15005], Wallet [balance= PLN 0.36728], Wallet [balance= RUB 3.59428], Wallet [balance= SEK 0.757], Wallet [balance= THB 3.90461]]]

Now of course the reason why it shows me as down 97% on the BTC side is that there is a run up and it sold all my bitcoins and I'm still waiting for a market correction (or to implement arbitrage so I can buy some BTC at a lower cost).  

My new USD balance is $57.72 and is up %7.78 from 6 hours ago.  If I were to convert my entire balance to BTC at the current market rate of $11.90  I would have 4.85 BTC.

Of course to compare that to my original figures, I could draw down my USD to just the original investment amount of ~$20.  
Which would give me
57 - 20 = 37
37 / 11.90 =  3.102 BTC = 310% profit since the first iteration of the software executed it's first trade on Sept 10th.

310 / 7 =  44%/day = Not too shabby.  Obviously that's not sustainable and was at least in part due to the low figures involved, a market hiccup and a subsequent run up in price.  Still it's not bad.

Oh one more tip...  If you post the entire PL including wallet balances make sure to remove the username field from it, otherwise you'll end up posting your MtGox username to a public forum, which is a HUGE security risk.
BCB
vip
Activity: 1078
Merit: 1002
BCJ
What information do you want reported?
This has been running for about 12 hours.


Code:
Sep 17, 2012 1:38:06 PM org.open.payment.alliance.isis.atp.TradingAgent marketOrder
INFO: Current P/L: BTC  %188.62453300
Sep 17, 2012 1:38:06 PM org.open.payment.alliance.isis.atp.TradingAgent marketOrder
INFO: Current P/L: USD %73.89400


downloading new jar today.
full member
Activity: 154
Merit: 102
You're welcome.  And this strategy is itself the result of backtesting against historical.

As I mentioned in the original thread, I used all the historical data I could get my hands on (about 3 years worth) and ran it on a map reduce cluster with various algorithms that I remembered from my finance classes at school.

What emerged was this hybrid which showed the strongest and most consistent performance.  It worked about 30% better than just holding onto bitcoins and trading at random times during the day but making sure to trade each day, (dollar cost averaging).

For the record I also ran the same algorithm against historical NYSE data and it didn't do well at all.

Did you write a paper about this process? Are charts or any results available to peruse? I read the original thread but have not come across hard numbers.

Looks like I need to go merge some new changes. I will try to keep a "stock" version running and pass along the results.

Thanks again

This originated as just a test case for the exchange connector for openpay.
Once I realized that to properly test the exchange connector I would essentially need to write a trading bot I went algorithm seeking.

On a lark I decided to use map reduce on a hadoop cluster to analyze the market data and its performance against a small handful of algorithms.

My top 2 were the ones I blended into this one.

I coded it, ran it for a couple of days and realized I didn't have sufficient funds to properly test it out.
That's when I created the original thread.

No I don't have hard numbers.  I could barely afford the cost to run the algorithm selection program on elastic map reduce.  You're more than welcome to run the app as much as you want, but understand tha the risk is yours.  That was sort of the point of making it open source and asking folks to test it and give me some hard numbers.

I hope you enjoy it
sr. member
Activity: 409
Merit: 250
You're welcome.  And this strategy is itself the result of backtesting against historical.

As I mentioned in the original thread, I used all the historical data I could get my hands on (about 3 years worth) and ran it on a map reduce cluster with various algorithms that I remembered from my finance classes at school.

What emerged was this hybrid which showed the strongest and most consistent performance.  It worked about 30% better than just holding onto bitcoins and trading at random times during the day but making sure to trade each day, (dollar cost averaging).

For the record I also ran the same algorithm against historical NYSE data and it didn't do well at all.

Did you write a paper about this process? Are charts or any results available to peruse? I read the original thread but have not come across hard numbers.

Looks like I need to go merge some new changes. I will try to keep a "stock" version running and pass along the results.

Thanks again
full member
Activity: 154
Merit: 102
After 15 minutes of runtime on the new codebase...
Code:

Sep 17, 2012 1:06:53 AM org.open.payment.alliance.isis.atp.TradingAgent marketOrder
INFO: Successfully bought 0.01 at current market price.
Sep 17, 2012 1:06:53 AM org.open.payment.alliance.isis.atp.TradingAgent marketOrder
INFO: Current P/L: BTC 0.04000000 %20.58895000
Sep 17, 2012 1:06:53 AM org.open.payment.alliance.isis.atp.TradingAgent marketOrder
INFO: Current P/L: USD -0.47568 %-0.87500
Sep 17, 2012 1:06:53 AM org.open.payment.alliance.isis.atp.TradingAgent marketOrder
INFO: AccountInfo [username=isis, wallets=[Wallet [balance= BTC 0.23427897], Wallet [balance= USD 53.91089], Wallet [balance= EUR 0.09964], Wallet [balance= GBP 0.07921], Wallet [balance= AUD 0.22792], Wallet [balance= CAD 0.21845], Wallet [balance= CHF 0.10945], Wallet [balance= JPY 9.773], Wallet [balance= CNY 0.72304], Wallet [balance= DKK 0.7253], Wallet [balance= HKD 9.80315], Wallet [balance= NZD 0.15005], Wallet [balance= PLN 0.36728], Wallet [balance= RUB 3.59428], Wallet [balance= SEK 0.757], Wallet [balance= THB 3.90461]]]

Looks like it's working Wink
full member
Activity: 154
Merit: 102
Thank you for your patience.
A new commit is in with a new jar file.
I still haven't fixed the license file issue, but the rest of the bugs are all taken care of ( i think).
Algorithm selection now appears to actually be working.

You still need to start with --debug-live=true if you want to leave simulation mode.

Startup "learning time" has been reduced from 1 hour to 10 minutes.
MarketData caching is enabled, as long as your application restart occurs within 10 minutes it will reuse the cache data.

Enjoy!
full member
Activity: 154
Merit: 102
Thank you for sharing your work with us isis. Please keep it coming, I would also be interested in the arbitrage version (as would most here, I'd imagine).

My thanks to nomorecoin, who's tips above helped me get eclipse going and have allowed me to tinker with this budding project.

Last but not least thanks to RicRock for bringing this project to my attention over in IRC.

Has this vwa strategy been backtested against historical data? If so, please post the results.

You're welcome.  And this strategy is itself the result of backtesting against historical.

As I mentioned in the original thread, I used all the historical data I could get my hands on (about 3 years worth) and ran it on a map reduce cluster with various algorithms that I remembered from my finance classes at school.

What emerged was this hybrid which showed the strongest and most consistent performance.  It worked about 30% better than just holding onto bitcoins and trading at random times during the day but making sure to trade each day, (dollar cost averaging).

For the record I also ran the same algorithm against historical NYSE data and it didn't do well at all.

sr. member
Activity: 409
Merit: 250
Thank you for sharing your work with us isis. Please keep it coming, I would also be interested in the arbitrage version (as would most here, I'd imagine).

My thanks to nomorecoin, who's tips above helped me get eclipse going and have allowed me to tinker with this budding project.

Last but not least thanks to RicRock for bringing this project to my attention over in IRC.

Has this vwa strategy been backtested against historical data? If so, please post the results.
full member
Activity: 154
Merit: 102
where is that in the code?

Yes it is, it's in the trend observer.
The vwap is available from MtGox, but the API we're using (xchange) does not report it, thus we have to calculate it ourself.

I'm considering modifying xchange's Ticker object to reflect this and seeing if I can get the maintainer to accept it upstream. 
That way I don't have to build and package my own jars etc.

I have to admit, this thing was a bit more profitable when we had the vwap from MtGox instead of the Roll Your Own version I had to hack together.
full member
Activity: 154
Merit: 102
is this calculating for the gox fee.

No, and yes.

The PL reflects the fee automatically since it pulls the current balance directly from mtgox.
However there is no way of obtaining the fee itself as far as I can see and there really isn't a place in the algorithm to place it since the algorithm is based on market pressure and all trades are market orders.

I will however be adding a fee calculation into the arbitrage engine I've started to build because the profitability of an arbitrage trade could be adversely impacted by that fee.  An arbitrage trade by definition carries a penalty of (fee*2).

Pages:
Jump to: