Pages:
Author

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

BCB
vip
Activity: 1078
Merit: 1002
BCJ
What's BitMe.  Never heard of it.  Who is it and and what is your association with them?
full member
Activity: 154
Merit: 102
Anything is appreciated.

BTW would anyone mind running some trades over at www.bitme.com ?
That's the exchange I use to sweep with since they can direct deposit via ACH into my bank account for only $0.25
The lowest ask is currently $12.99, but the highest bid is only $10.80.
I'm about to price all 4 of mine @ $12.25 which is the MtGox low right now.

I wouldn't ask, but my ISP is threatening to shutoff my internet in a few days and since I'm between contracts right now, this is how I expect I'll be paying it.

I just transferred from MtGox to BitMe, usually takes about an hour or so to complete and then I'll post the orders.

Thanks!
full member
Activity: 154
Merit: 102
Just sent 80 bitcents your way. It seems your native dialect is object oriented, and that suits you just fine. Remember, Java requires occasional coffee breaks. It's the rules, I think.

Thanks!  I appreciate the donations, it helps with the motivation and the 12 hour days Wink
full member
Activity: 154
Merit: 102


Thanks for your efforts, isis.


Would it be possible to get a final prototype jar that addresses the VWAP/VWAC issue you mentioned.  Is the thread deadlock issue only occuring with the arbitrage logic?

If you think it would be a fruitless effort - that's fine. Thanks.

I'm knee deep in a refactor to fix the thread locking issue.
If you go back to the version right before the arbitrage version and fix the askArrow (it had bidArrow+,+ bidArrow-- twice) issue in the trend observer it should actually trade pretty well now.

I'm going to be a couple of days before I get this new version out.
I'm using a custom framework model to support dynamically loading and unloading exchanges plus I'm putting in a command interpreter so you can set limits, turn on & shut off exchanges, get depth etc.  About the only thing I'm keep from the old version is the name.




Good tip.  I'll look in to it.  Thanks again.  Don't work too hard.

Lord, you'd never guess English is my first language from looking at my posts.
sr. member
Activity: 252
Merit: 250
Inactive


Thanks for your efforts, isis.


Would it be possible to get a final prototype jar that addresses the VWAP/VWAC issue you mentioned.  Is the thread deadlock issue only occuring with the arbitrage logic?

If you think it would be a fruitless effort - that's fine. Thanks.

I'm knee deep in a refactor to fix the thread locking issue.
If you go back to the version right before the arbitrage version and fix the askArrow (it had bidArrow+,+ bidArrow-- twice) issue in the trend observer it should actually trade pretty well now.

I'm going to be a couple of days before I get this new version out.
I'm using a custom framework model to support dynamically loading and unloading exchanges plus I'm putting in a command interpreter so you can set limits, turn on & shut off exchanges, get depth etc.  About the only thing I'm keep from the old version is the name.




Good tip.  I'll look in to it.  Thanks again.  Don't work too hard.
zaj
member
Activity: 103
Merit: 10
you  need to run it with the debug = true flag
sr. member
Activity: 369
Merit: 250
Thats fine. Im curious when watching logs i get this line:

INFO: You are in simulation mode, the transaction below did NOT actually occur.

What is this exactly?

Looking forward to your new release !
full member
Activity: 154
Merit: 102


Thanks for your efforts, isis.


Would it be possible to get a final prototype jar that addresses the VWAP/VWAC issue you mentioned.  Is the thread deadlock issue only occuring with the arbitrage logic?

If you think it would be a fruitless effort - that's fine. Thanks.

I'm knee deep in a refactor to fix the thread locking issue.
If you go back to the version right before the arbitrage version and fix the askArrow (it had bidArrow+,+ bidArrow-- twice) issue in the trend observer it should actually trade pretty well now.

I'm going to be a couple of days before I get this new version out.
I'm using a custom framework model to support dynamically loading and unloading exchanges plus I'm putting in a command interpreter so you can set limits, turn on & shut off exchanges, get depth etc.  About the only thing I'm keep from the old version is the name.

sr. member
Activity: 252
Merit: 250
Inactive


Thanks for your efforts, isis.


Would it be possible to get a final prototype jar that addresses the VWAP/VWAC issue you mentioned.  Is the thread deadlock issue only occuring with the arbitrage logic?

If you think it would be a fruitless effort - that's fine. Thanks.
sr. member
Activity: 369
Merit: 250
Really looking for another .jar - java devs i know had trouble building it due to the dependencies.

REALLY want to get this running xD
zaj
member
Activity: 103
Merit: 10
looking forward to the next version!
full member
Activity: 154
Merit: 102
Every transaction has a long side and a short side.

If you're long on bitcoins (meaning you wish to obtain bitcoins for eventual sale) this means you should be looking for an algorithm that primarily buys bitcoins.  This is called a "buyside algorithm".

If you're long on a different currency, for instance USD, you should be looking for an algorithm that primarily sells bitcoins, also known as a "sell side" algorithm.

Long on one currency by definition means you are taking a short position on the other, and vise versa.

Therefore which algorithm you choose depends entirely on how you see bitcoins and what you believe their role is, or should be in a transaction.

It is the position of OpenPay that bitcoins are primarily a "short" currency, i.e. they should be sold and not horded or accumulated in large numbers because they present a significant risk when held long term.  The same could be said for ANY currency, but OpenPay's purpose is to allow easy spending of bitcoins and that does necessitate a "short" position.

There are others who believe that bitcoins are a "long" currency.  That is to say that they make a good long term investment and thus should be held onto for as long as possible.  The problem is that you can't really spend your bitcoins if you're long on them.  

Either way, I believe that being short or long is only relevant in that use the terms to define what it is exactly that we are trying to accomplish.  In other words do we want to end up with BTC (long), or Local (short).

If we are short then we want to use full currency pair arbitrage.  That is to say USD/MXN using bitcoins ONLY as an intermediary stop along the way.  Essentially we just convert any bitcoins we receive directly into our preferred local currency.

A long position would require the use of a market timed trading algorithm such as the 3 arrow VWAP/VWAC algorithm, the Stochastic Oscillator or others, to ensure that we buy when the markets are low, and sell when the markets are high, thus locking in profits in our preferred local currency.

After our test run I've come to the conclusion that the reason we (well me anyways) was/were taking a loss is because the wrong algorithm was being used.

We should take a step back and define what we really want here.

For me I'd like to build a bot, give it a few hundred dollars and have some reasonable assurance that it would consistently generate a living income without significant intervention.  I'm calling this my "Retirement Machine", we can call it the "Advanced Trading Platform".

To do this we want to define some time lines, find algorithms that work well along those time lines and implement an application that can actually run each of those algorithms simultaneously for prolonged periods of time.

The smallest interval is the < 1 minute interval.  This interval should be used purely to trade into arbitrage profits across currency pairs on single or multiple exchanges, because these conditions tend to last only a minute or less.  Because of the rapid nature of this interval, the Arbitrage Engine should use ONLY market orders.  This is the YYY/XXX with bitcoins being only a temporary stopping point along the way.

The next interval is the 1-10 minute interval, this is the bid/ask spread algorithm.  This algorithm deals with intra-minute trading and should look at the orderbooks of each currency traded to find diverging spreads and try to find a way to profit by trading the spreads.

From 1 hr and beyond, the 3 arrow, VWAP/VWAC algorithm or some other market timing algorithm begins to make a lot of sense.  It's purpose is to create a profit by measuring the market pressures that occur over the timespan of 1hr to 1 day.  At this scale a significant run up is possible but not likely, however significant drops do occur.  Thus this algorithm favors acquiring large amounts of BTC during crashes and holding onto them until the market recovers at which point it will sell them off in accordance with the market "buy" pressure.  Think of this as surfing the waves that occur from a long run up and sudden drop in price such as the one about to occur.  This algorithm favors neither currency and only seeks to trade to a profit whether that be BTC or Local.

At the time frame of a day or a week, a profit taking algorithm should kick in and sweep a percentage of profits into local currency for cashing out of the market and either saving or spending.
 
In my next post I'll go in depth into each of the algorithms I'm favoring for each time period.  I would like feedback on each before it's implemented.



 
newbie
Activity: 22
Merit: 0
If you can get enough people using it then I could see the benefit of the program, I agree huge.
full member
Activity: 154
Merit: 102
So let's start a discussion about the algorithms and develop the data model.
First, the development of this has been extremely interesting to follow. It's gone from the most basic market comparison tool, to an intricate multi-currency sniper.

As far as the algorithm and goals: Anything that spreads around trade liquidity is good for Bitcoin. It will also act to trim swings, neutralizing needless volatility. The OpenPay project also benefits from reduced volatility, as an added bonus.

I could see this platform running 24/7. Long term profit would be a close second to short term gains.
If the goal of this is "the market has some action today, better fire up ATP", as long as its use is clear, I'm ok with that too.

The current market can be traded with very basic techniques, with relatively good results. I think your current goals are in line with where the opportunities will be in the future - less obvious, short-lived, and smaller.

Thanks, I appreciate it.

There are a few end goals with this.  Firstly, there are markets where the trading volume is 0, they are completely illiquid.  This means someone can't get into or out of a position.  That is a problem from the standpoint of OpenPay because for merchants to adopt OpenPay, they will need to be able to get into and out of a bitcoin position rapidly.

I'm a firm believer in not re-inventing the wheel.  MtGox is good enough for the major currencies but I've noticed that there are other exchanges for some of the currencies that have no liqiudity at all on MtGox.  If you run the numbers there are significant arbitrage opportunities in cross currency, cross exchange arbitrage.  For instance, on BTC-e you can buy bitcoins for USD 12.29, you can sell those same bitcoins on MtGox for $12.54, that's a profit of 0.25 USD.  If you were to trade 100 BTC this way you're talking about $25.00USD profit.  However if you sold those same coins into GBP on MtGox you would make a $31.00 profit, the question then becomes how do I get out of a currency position that is not my preferred local currency. (the answer is to wait for the price to drop and take advantage of that differential to close your position out).

The VWAP algorithm is a sound one for making money on the peaks and valleys of the market.  If you swap VWAP for VWAC in the equation and you apply a conversion factor to all trades to ensure you are always on the profitable side, the algorithm grows even stronger.  I've also been asked to look substituting the stochastic oscillator algorithm, which is a possibility, but I don't think that would work on MtGox.  Nevertheless if enough people want to donate to see it happen I'll be willing to add it as an option while I'm in here.

However all that aside, it's because of opportunities like the ones described above, that I am convinced that converting the application to a "meta market" trader would be a good idea from the standpoint of the OpenPay mission.

I have to go for a few hours, but when I come back I'm going to lay out the new algorithm as I see it and solicit your feedback.  Assuming it's generally well liked, we can build a data model and some unit tests around it.  Once we have the model I'll start working on a new more generalized API for dealing with the various exchanges.  The goal being to support arbitrage across as many exchanges simultaneously as possible.
legendary
Activity: 1358
Merit: 1002
You say after 3 hours it gets to an halt? It happened to me after 50 min.
Even less(5min) if I count the time since it stops seeking for arbitrage opportunities and just fetches tickers for the several currencies on the account. It starts OK, then it leaves one of the currencies behind and keeps going until you find yourself seeing the ticker for only 1 of the currencies.

BTW, why does it even keeps track of the market trends?
full member
Activity: 154
Merit: 102
I've been trying to troubleshoot the deadlocking issue all day and I'm not having any success at all.
Normally JMX can tell me right away, but every tool I've tried is coming up empty.

I specialize in highly available, massively parallel, scalable systems so even seeing this issue is a bit embarrassing.
There are 33 threads running, each one seems to be happy but after about 3 hours the whole system grinds to a halt.

This project has grown from a single algorithm, to what it is today all in a matter of a week or so.  This type of project development is not conducive to a project of this scope, especially one that deals with money.

Since the deadlock does not appear to be happening anywhere in my own code I'm starting to suspect that the library I'm using to handle the heavy lifting of communicating with MtGox (xchange) is not actually thread safe.  However I'm a firm believer in the old adage that it's a poor craftsman who blames his tools.

I'm going to re-engineer the whole application, including the libraries. 

I'm going to start with the algorithms involved, develop a data model and work outward from there.

In the meantime, I would like to apologize for the poor implementation.  It's a direct result of a bad habit I've picked up called Implement at Design time, which has caused me to forego unit testing and a lot of common sense.

So let's start a discussion about the algorithms and develop the data model.

zaj
member
Activity: 103
Merit: 10
after taking a good look, the damage was only 0,4 btc considering the other 3 days i traded:) still not anything to worry about and glad to be able to test this.
full member
Activity: 154
Merit: 102
so far my bot has been running the past 8 hours but has sold all my coins the first half hour and hasn't done anything since besides saying no actions will be taken at this time. been down 100% on the btc side and have now 144$ in my walllet. my current profit and loss so far should be about -3btc if i were to convert them now to btc.

also i am not leaving my pc on 24/24 does this have a negative influence on my profits? my pc is running about 5-12 hours a day

I would shut it down, go to MtGox and try to recover as much of your position as you can, BTC is only going to go up for the next few days.  It sounds like you're hitting the thread deadlock issue as well.  Don't trade with the bot until I can fix the deadlock issue otherwise you could end up missing crucial market movements.

Also I will tell the arbitrage bot to respect the trading limits as they are set for the VWAP bot so it's not acting so greedy.  That should stop any surprises such as when all my coins suddenly became, RUB, BHAT, GBP and then EUR.  All told I lost 1 bitcoin on that final trade when I had to recover my position, although my total profit as USD was $15.00 I lost money on the spread while trying to buy back BTCs with EUR.

zaj
member
Activity: 103
Merit: 10
 downloaded the latest binary about 8hours ago .
so far my bot has been running the past 8 hours but has sold all my coins the first half hour and hasn't done anything since besides saying no actions will be taken at this time. been down 100% on the btc side and have now 144$ in my walllet. my current profit and loss so far should be about -3btc if i were to convert them now to btc.

also i am not leaving my pc on 24/24 does this have a negative influence on my profits? my pc is running about 5-12 hours a day

this is how its been the past 7 hours :
Code:
80497 | Currency: BTC | TimeStamp: 2012-09-19T21:19:34.043Z
VWAP: 12.47947


19-sep-2012 23:19:37 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Weight is 0.0935672514619883
19-sep-2012 23:19:37 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Attempting to sell 0.00305648374269005830986323246634128736332058906555175
78125 of 0.03266617 BTC available
19-sep-2012 23:19:37 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: 0.0030564837426900583098632324663412873633205890655517578125 was less than
 the configured limit of 0.01
There just isn't enough momentum to trade at this time.
19-sep-2012 23:19:37 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 171 | Trend Arrow: 2.0 | Bid Arrow: 14.0 | Ask Arrow: 0.0 | V
WAP: USD 12.47947
The market is trending up.

High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.43 | Ask: USD 12.49 | Volume: 4412265204855
| Currency: BTC | TimeStamp: 2012-09-19T20:22:52.468Z
Current:  Last: USD 12.55 | Bid: USD 12.55 | Ask: USD 12.57998 | Volume: 4417559
837717 | Currency: BTC | TimeStamp: 2012-09-19T21:20:36.551Z
VWAP: 12.47958


19-sep-2012 23:20:38 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Weight is 0.0935672514619883
19-sep-2012 23:20:38 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Attempting to sell 0.00305648374269005830986323246634128736332058906555175
78125 of 0.03266617 BTC available
19-sep-2012 23:20:38 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: 0.0030564837426900583098632324663412873633205890655517578125 was less than
 the configured limit of 0.01
There just isn't enough momentum to trade at this time.
19-sep-2012 23:20:38 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 171 | Trend Arrow: 2.0 | Bid Arrow: 14.0 | Ask Arrow: 0.0 | V
WAP: USD 12.47958
The market is trending up.

High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.43 | Ask: USD 12.49 | Volume: 4412265204855
| Currency: BTC | TimeStamp: 2012-09-19T20:22:52.468Z
Current:  Last: USD 12.55 | Bid: USD 12.55 | Ask: USD 12.57998 | Volume: 4136823
204026 | Currency: BTC | TimeStamp: 2012-09-19T21:21:37.980Z
VWAP: 12.48640


19-sep-2012 23:21:39 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Weight is 0.0755813953488372
19-sep-2012 23:21:39 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Attempting to sell 0.00246895470930232543379817533590880884730722755193710
3271484375 of 0.03266617 BTC available
19-sep-2012 23:21:39 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: 0.002468954709302325433798175335908808847307227551937103271484375 was less
 than the configured limit of 0.01
There just isn't enough momentum to trade at this time.
19-sep-2012 23:21:39 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 172 | Trend Arrow: 2.0 | Bid Arrow: 11.0 | Ask Arrow: 0.0 | V
WAP: USD 12.48640
The market is trending up.

High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.43 | Ask: USD 12.49 | Volume: 4412265204855
| Currency: BTC | TimeStamp: 2012-09-19T20:22:52.468Z
Current:  Last: USD 12.55 | Bid: USD 12.55 | Ask: USD 12.57998 | Volume: 4139531
927429 | Currency: BTC | TimeStamp: 2012-09-19T21:22:39.439Z
VWAP: 12.44321


19-sep-2012 23:22:40 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Weight is 0.08092485549132948
19-sep-2012 23:22:40 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Attempting to sell 0.00264350508670520235144515974745615949359489604830741
88232421875 of 0.03266617 BTC available
19-sep-2012 23:22:40 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: 0.0026435050867052023514451597474561594935948960483074188232421875 was les
s than the configured limit of 0.01
There just isn't enough momentum to trade at this time.
19-sep-2012 23:22:40 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 173 | Trend Arrow: 2.0 | Bid Arrow: 12.0 | Ask Arrow: 0.0 | V
WAP: USD 12.44321
The market is trending up.

High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.58 | Bid: USD 12.55 | Ask: USD 12.58 | Volume: 4140547220
854 | Currency: BTC | TimeStamp: 2012-09-19T21:23:30.700Z
VWAP: 12.52043


19-sep-2012 23:23:41 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Weight is 0.07514450867052024
19-sep-2012 23:23:41 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Attempting to sell 0.00245468329479768799491354314135094227822264656424522
39990234375 of 0.03266617 BTC available
19-sep-2012 23:23:41 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: 0.0024546832947976879949135431413509422782226465642452239990234375 was les
s than the configured limit of 0.01
There just isn't enough momentum to trade at this time.
19-sep-2012 23:23:41 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 173 | Trend Arrow: 2.0 | Bid Arrow: 11.0 | Ask Arrow: 0.0 | V
WAP: USD 12.52043
The market is trending up.

High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.55 | Bid: USD 12.55 | Ask: USD 12.58 | Volume: 4140313957
233 | Currency: BTC | TimeStamp: 2012-09-19T21:24:21.903Z
VWAP: 12.52043


19-sep-2012 23:24:42 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Weight is 0.05747126436781609
19-sep-2012 23:24:42 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Attempting to sell 0.00187736609195402296245205886471296707895817235112190
24658203125 of 0.03266617 BTC available
19-sep-2012 23:24:42 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: 0.0018773660919540229624520588647129670789581723511219024658203125 was les
s than the configured limit of 0.01
There just isn't enough momentum to trade at this time.
19-sep-2012 23:24:42 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 174 | Trend Arrow: 1.0 | Bid Arrow: 9.0 | Ask Arrow: 0.0 | VW
AP: USD 12.52043
The market is trending up.

High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.55 | Bid: USD 12.55 | Ask: USD 12.58 | Volume: 4139812457
233 | Currency: BTC | TimeStamp: 2012-09-19T21:25:02.845Z
VWAP: 12.52998


19-sep-2012 23:25:43 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 175 | Trend Arrow: 0.0 | Bid Arrow: 7.0 | Ask Arrow: 0.0 | VW
AP: USD 12.52998
The market is trending flat.
No action will be taken at this time.


High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.58001 | Bid: USD 12.58001 | Ask: USD 12.58333 | Volume: 4
144471919791 | Currency: BTC | TimeStamp: 2012-09-19T21:26:35.338Z
VWAP: 12.49490


19-sep-2012 23:26:44 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 174 | Trend Arrow: 0.0 | Bid Arrow: 10.0 | Ask Arrow: 0.0 | V
WAP: USD 12.49490
The market is trending flat.
No action will be taken at this time.


High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.58001 | Bid: USD 12.55 | Ask: USD 12.58 | Volume: 4183147
700071 | Currency: BTC | TimeStamp: 2012-09-19T21:27:36.786Z
VWAP: 12.49559


19-sep-2012 23:27:45 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 174 | Trend Arrow: 0.0 | Bid Arrow: 11.0 | Ask Arrow: 0.0 | V
WAP: USD 12.49559
The market is trending flat.
No action will be taken at this time.


High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.49983 | Bid: USD 12.49983 | Ask: USD 12.58 | Volume: 4182
271228573 | Currency: BTC | TimeStamp: 2012-09-19T21:28:27.968Z
VWAP: 12.48694


19-sep-2012 23:28:46 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 174 | Trend Arrow: 0.0 | Bid Arrow: 10.0 | Ask Arrow: 0.0 | V
WAP: USD 12.48694
The market is trending flat.
No action will be taken at this time.


High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.49983 | Bid: USD 12.49299 | Ask: USD 12.58 | Volume: 4178
629825323 | Currency: BTC | TimeStamp: 2012-09-19T21:29:19.140Z
VWAP: 12.48695


19-sep-2012 23:29:47 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 175 | Trend Arrow: 0.0 | Bid Arrow: 9.0 | Ask Arrow: 0.0 | VW
AP: USD 12.48695
The market is trending flat.
No action will be taken at this time.


High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.49983 | Bid: USD 12.49299 | Ask: USD 12.58 | Volume: 4178
583024369 | Currency: BTC | TimeStamp: 2012-09-19T21:30:20.554Z
VWAP: 12.45311


19-sep-2012 23:30:48 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Weight is 0.057803468208092484
19-sep-2012 23:30:48 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: Attempting to sell 0.00188821791907514447198451756904091780597809702157974
2431640625 of 0.03266617 BTC available
19-sep-2012 23:30:48 org.open.payment.alliance.isis.atp.TradingAgent evalAsk
INFO: 0.001888217919075144471984517569040917805978097021579742431640625 was less
 than the configured limit of 0.01
There just isn't enough momentum to trade at this time.
19-sep-2012 23:30:48 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 173 | Trend Arrow: 1.0 | Bid Arrow: 9.0 | Ask Arrow: 0.0 | VW
AP: USD 12.45311
The market is trending up.

High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.49983 | Bid: USD 12.49299 | Ask: USD 12.58 | Volume: 4173
237116215 | Currency: BTC | TimeStamp: 2012-09-19T21:31:32.159Z
VWAP: 12.48700


19-sep-2012 23:31:49 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 173 | Trend Arrow: 0.0 | Bid Arrow: 9.0 | Ask Arrow: 0.0 | VW
AP: USD 12.48700
The market is trending flat.
No action will be taken at this time.


High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.49983 | Bid: USD 12.49299 | Ask: USD 12.57999 | Volume: 4
171952076215 | Currency: BTC | TimeStamp: 2012-09-19T21:32:43.815Z
VWAP: 12.53071


19-sep-2012 23:32:50 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 173 | Trend Arrow: -1.0 | Bid Arrow: 5.0 | Ask Arrow: 0.0 | V
WAP: USD 12.53071
The market is trending down.
No action will be taken at this time.


High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.49 | Bid: USD 12.46007 | Ask: USD 12.49 | Volume: 4173498
225215 | Currency: BTC | TimeStamp: 2012-09-19T21:33:45.207Z
VWAP: 12.56130


19-sep-2012 23:33:51 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 173 | Trend Arrow: -4.0 | Bid Arrow: -2.0 | Ask Arrow: 0.0 |
VWAP: USD 12.56130
The market is trending down.
No action will be taken at this time.


High:  Last: USD 12.588 | Bid: USD 12.5 | Ask: USD 12.588 | Volume: 436142342678
3 | Currency: BTC | TimeStamp: 2012-09-19T20:56:44.423Z
Low:  Last: USD 12.43 | Bid: USD 12.46381 | Ask: USD 12.55 | Volume: 44240077019
67 | Currency: BTC | TimeStamp: 2012-09-19T20:58:48.294Z
Current:  Last: USD 12.46007 | Bid: USD 12.46022 | Ask: USD 12.49298 | Volume: 4
172885964596 | Currency: BTC | TimeStamp: 2012-09-19T21:34:46.640Z
VWAP: 12.56127


19-sep-2012 23:35:04 org.open.payment.alliance.isis.atp.TradingAgent run
INFO: Ticker Size: 172 | Trend Arrow: -4.0 | Bid Arrow: 1.0 | Ask Arrow: 0.0 | V
WAP: USD 12.56127
The market is trending down.
No action will be taken at this time.

full member
Activity: 154
Merit: 102
I'm still investigating the problem with thread deadlocking.
In the meantime I've been looking at the algorithm for the VWAP trader and realized that I can improve it's performance in the short term at the possible cost of a loss in long term profits.

The way it trades right now it basically assumes that all of your bitcoins have a cost = to VWAP. 

This is because over the course of a year or two if you trade the way the algorithim is currently setup your VWAC (volume weighted average cost) will always approach the market VWAP for your primary currency.

This is true if and ONLY if you are only trading a single pair.
Once you play all pairs (or multiple pairs anyways) simultaneously, the VWAC  will actually match the VWAP * average conversion factor, in otherwords your costs may be different from what the engine currently believes that they are.

The solution is to track a per pair VWAC and a lump sum VWAC (both normalized to your preferred currency).  Once you have this number, you can use the VWACs as your water mark instead of the VWAP.  This will prevent trading into a loss, and ensure you always take a profit on every trade.  However profits will be smaller per trade and trades will be less frequent, hence the longer term opportunity cost.

This is only the case because BTC will always be a deflationary currency.  Thus we can predict that bubbles and run ups aside, on the whole (20 - 30 years) the market will tend to slowly rally more than it will fall.  (Hence all the hoarding).

 
Pages:
Jump to: