Friday 26 July 2013

Week of 2013 JL 26

IWM fell by 0.2% this week.  My account fell 0.1%.  The loss-floor has risen to -8.5%.

I converted eleven years of hourly charts to a fresh database of IWM historical prices.  This should yield better results, as now the database is consistent (all downloaded on the same day) and much larger (the old database went back only to 2008, which is not enough to see all the market’s moods).

End of week allocations:
Daily % gain
size
Max loss
Sym  Buy  Fri  Mon  Tue  Wed  Thu  Fri Beg   End
 
FNSR JL15 +0.1  10  +0.2  10  +0.1  10  +0.2  10  +0.2  10  +0.2  10  -1.5 -1.4
UWM JL15 +0.2  10  +0.3  10  +0.2  10  +0.1  10  +0.2  10  +0.2  10  -0.6 -0.5
URTY JL15 +0.3  10  +0.4  10  +0.4  10  +0.1  10  +0.4  10  +0.3  10  -1.3 -0.8
AGQ JL23 +0.1  10  -0.1  10  -0.1  10  -0.2   9  -1.2 -0.8
SRTY JL24 -0.1  10  -0.1  10  -0.1  10 
YHOO JL25 +0.2  10  +0.1  10  -0.7 -0.7
IWM +26.4     +26.7     +26.6     +25.5     +26.7     +26.2    
me -5.4 -5.2 -5.1 -5.8 -5.2 -5.5
floor -9.3 -9.1 -9.9 -9.5 -9.0 -8.5

FNSR: First completed trade using the new trading model!  Sold it for 3% more than I paid for it, but had invested only 10% of my money, so (with trading costs) gained only 0.2% from it.

Double-TRIX trading model

Now supports short-selling models.

LongShort
Buy signal: When all are true:
  • TRIX(q) > its EMA(2)
  • Either TRIX(q) < 0 OR TRIX(s) > its EMA(2)
  • close SMA(q)
  • Low > stop
For a daily trade, the signal is given after the daily close and so the purchase is at tomorrow’s opening price.  For hourly, signals are given on the hour 11am‥3pm and the purchase is immediate.
When all are true:
  • TRIX(q) < its EMA(2)
  • Either TRIX(q) > 0 OR TRIX(s) < its EMA(2)
  • close SMA(q)
  • High < stop
For a daily trade, the signal is given after the daily close and so the purchase is at tomorrow’s opening price.  For hourly, signals are given on the hour 10am‥3pm and the purchase is immediate.
Sell signal: When all are true:
  • TRIX(q) < its EMA(2)
  • TRIX(s) < its EMA(2)
For a daily trade, the signal is given after the daily close and so the sale is at tomorrow’s opening price.  For hourly, signals are given on the hour 11am‥3pm and the sale is immediate.
When all are true:
  • TRIX(q) > its EMA(2)
  • TRIX(s) > its EMA(2)
For a daily trade, the signal is given after the daily close and so the sale is at tomorrow’s opening price.  For hourly, signals are given on the hour 10am‥3pm and the sale is immediate.
Retest sale: When exactly w periods have passed after a purchase, if close < m times the purchase price, then sell (next day for daily, immediately for hourly). When exactly w periods have passed after a purchase, if close > m times the purchase price, then sell (next day for daily, immediately for hourly).
Stop price: If close > SMA(s):
  • stop = CHANDELIER(c⁺,a⁺)
Otherwise:
  • stop = CHANDELIER(c⁻,a⁻)
For daily or hourly trades, the stop is recalculated once per day, after market close, and is used as the stop-price for the following day.  At any time, if low < stop, then we recognize that the shares were sold and the trade is over.
If close < SMA(s):
  • stop = CHANDELIER(c⁺,a⁺)
Otherwise:
  • stop = CHANDELIER(c⁻,a⁻)
For daily or hourly trades, the stop is recalculated once per day, after market close, and is used as the stop-price for the following day.  At any time, if high > stop, then we recognize that the shares were sold and the trade is over.

I have added some additional tickers to the set that this model can work with.  SRTY will now be traded using this model rather than the MACD-based one.  Also, the URTY model has been retuned since now there is more archival IWM data to train it on:
(daily) (hourly)
Model ticker: ATML FNSR YHOO SCHH IWC SLV IWM IWM IWM
Trade ticker ATML FNSR YHOO SCHH IWC AGQ (2×) UWM (2×) URTY (3×) SRTY (3×)
TRIX(q) 3 3 2 4 14 4 12 16 5
TRIX(s) 17 17 28 23 64 23 51 97 6
SMA(q) 9 1 10 8 4 1 3 1 1
SMA(s) 240 270 120 210 190 250 130 180 220
CHANDELIER(c⁺,a⁺) 27, 4.9 25, 6.0 27, 5.0 10, 5.0 19, 4.7 11, 4.6 32, 3.4 314, 12.9 305, 11.1
CHANDELIER(c⁻,a⁻) 21, 4.2 22, 3.8 21, 3.9 20, 2.3 22, 2.7 20, 2.3 23, 2.7 32, 11.1 24, 3.9
RETEST(w,m) 4, 1.01 3, 0.99 3, 0.995 3, 1.01 4, 0.995 1, 0.99 3, 1.00 999, 1.0 999, 1.0

The RETEST function doesn’t seem to be useful for hourly trading, so I’ve set its parameters to (999,1.0) to disable it for those cases.

IWC is currently on a “buy” signal, but I haven’t bought because it looks like the uptrend is nearly over.  I’m waiting for some retrace action before beginning to use this model.

I have done a test to see whether it really makes sense to model one ticker while trading another.  Here is a chart of simulated gains:
Year AGQ SLV (2×) Model SLV, trade AGQ
2010 1.0% 4.4% 4.7%
2011 8.2% 9.5% 9.8%
2012 1.6% 2.7% 2.7%
As you can see, modelling AGQ directly doesn’t work very well because the leverage interferes with the technical indicators.  Trading a double-sized tranche of SLV is okay (except it uses up twice as much capital), but best results are obtained when modelling SLV while trading AGQ.

MACD-based short-swing/news trades

This model is now out of use.  Next week, I will start using the new double-TRIX model to trade SRTY.

PPO-based swing trades

This model should be retuned now that I have a lot more archival data available.  The TNA and TZA trades haven’t been doing very well with their current tunings.

Gold trading

No “Buy” signal yet for this model, but getting close!  Maybe next week.

Stock-trading robot

Some glitches this week, but it seems the stop-update for daily trades is now working.

Ticker
Symbol
Buy dateBuy priceSell dateSell priceAcct Profit
ModelActualMAModelActual M  A  M  A 
FNSR MA 29 09:30 JL 15 09:30 $12.81 $18.48 JL 25 09:30 $18.67 4.6% 0.2%
UWM JL 05 09:30 JL 15 09:30 $63.31 $67.95 (Not yet)
URTY JN 25 10:00 JL 15 09:30 $50.02 $63.70 (Not yet)
AGQ JL 23 09:30 $18.08 (Not yet)
SRTY JL 24 15:00 JL 24 14:00 $16.06 $16.10 JL 25 10:00 JL 24 14:00 $15.97 $16.08 -0.1%
YHOO JL 25 09:30 $27.73 (Not yet)

FNSR: Got very little profit because I was very late to a trade-already-in-progress.  Still, got a profit!

URTY: The new model parameters would have bought on JN 25 rather than JL 01.

SRTY: Last trade using the old MACD-based model.  The robot screwed up and set a stop price that was above the purchase price, so Schwab sold it immediately.  I think this robot problem affects all short hourly models, so it needs looking into.  Luckily, the trade turned out to be a loser so there was no excess loss from aborting it.

No comments:

Post a Comment