Monthly Archives: August 2016

Minimum Spanning Trees and G10FX implied volatilities…

I have always been keen on clustering methods as they are a practical way to visualise meaningful relationships that may exist in the somehow chaotic financial markets…..Following my previous post on the subject I decided to extend this to FX Implied volatilies…

The following charts show how major 1-month FX volatilities have been trading over the last 20-years and for 2016.

plot of chunk charts

The folowing charts shows the correlations of daily changes since 1996 and for 2016.

plot of chunk correlation

The below plot the minimum spanning tree for G10FX implied vols. The distance between the nodes being a function of the above correlations. Some groupings are quite intuitive…some other less so…I would say the recent period seems to be at odd with the period 2010-2015 where we had two specific group: one for European currencies the other for commodity currencies….

plot of chunk mst

If you want a natter about this or just to exchange some ideas on the subject or other concepts presented in my blog, contact me at Pierre@argonautae.com

US MUTUAL FUND FLOWS REPORT UPDATE

Thu Aug 11 22:32:08 2016

Fund flows are important as they reflect the general investor preference for a specific asset class given current and expected economic conditions and market risk. They may also highlight non-sustainable market positioning. The ICI in the US tracks about 98% of the inflows and outflows in US mutual funds and makes its data freely available on its website. The following is a summarised report of the data it publishes every Wednesday. The first charts shows the cumulative inflows/outflows in each of the asset classes buckets since 2007

plot of chunk cumulative

During the month of August we have seen flows of US$ -7.43Bn in Domestic equities,US$ -1.53Bn in international equities, US$ -0.123Bn in Hybrid products,US$ 6.58 Bn in taxable bond funds and US$ 1.4Bn in non taxable bond funds.

plot of chunk month to date
The Charts below shows the distribution of the US$ -190Bn that have flowed into US$ Mutual funds over the last 12-month.

plot of chunk distribution

The below charts show the monthly inflows/outflows for each type of fund and plot them both within their 95% confidence intervals and also relative to their historical distribution. This provides a level of information in respect of how “out of line” or not the current month inflows/outflows may be relative to their past history. In the distribution charts The current month is highlited in blue whereas the vertical red lines represent the 95% confidence intervals.

plot of chunk flowdistribution

The chart below plot the inflows/outflows T-statistics for each of the funds cathegories considered. The Map chart provides information for period ranging from 2 years to 3 months.The greater the square the more important the inflows (green) outflows(red) over a given period.

plot of chunk flowmap

GBP TWI Break Analysis…

In the following I us an R package BFAST designed to detect strucutural breaks in time series.The script Iteratively detects breaks in the seasonal and trend component of a time series. The first chart shows the various break and fitted regressions. The second chart shows the deviations from the regression lines and 95% interval of confidence. This could be used as an overbought/oversold indicator. Anyway, just work in progress…so any input / suggestions are always welcome as usual. Feel free to contact me at:Pierre@argonautae.com

plot of chunk plot plot of chunk plot

US Stock Market Risk Report Update…

The following report provides an update on some of the metrics I use to classify market risk. The word classify is more appropriate as I think that in essence you cannot forecast risk but rather attempt to adjust to it into a timely fashion. Clearly risk would not be a risk if you could forecast it accurately. However as there is generally some degree of persistence in risk regimes, using a dynamic classification may be a useful approach for portfolio rebalancing and hedging. In this report I use the VIX as a measure of global financial market risk. The same methodology can be successfully applied to other inputs. Feel free to contact me at Pierre@argonautae.com for more information on the subject.

In my approach I recognise that the nominal level of implied volatility is a crude metric of risk therefore I also use two other measures. The VIX Volga, a measure of uncertainty of risk and the ShockIndex a measure of market dislocation. VIX Volga is simply the volatility of the VIX over a given period. This measure highlights how uncertain and unstable the level of risk has become. Though positively correlated to the level of the VIX the VIX Volga is not necessarily dependent on it. You can have a high level of volga whilst the VIX is trading at rather innocuous levels. This is not a trivial observation as the leverage undertaken by market participants tends to be an inverse function of market volatility which implies a greater vulnerability when volatility becomes uncertain at low levels and therefore cannot be accurately budgeted fo r. The ShockIndex is the ratio between the Volga and VIX at the beginning the historical window chosen to evaluate the Volga. It quantifies sharp changes and acceleration in risk levels. Historically it has proven to be a good classifying measure for market event risks.

The below charts shows those three measures both relative to a time axis and their historical distribution. The red lines are the 95% confidence intervals, the purple line the median. The blue line highlight the current level. The VIX Volga and ShockIndex in this report are evaluated over a period of 14 days. The medians and 95% confidence intervals are calculated over the full history going back to 1990 though the charts shows only the recent years.

plot of chunk riskchart

At close of business the 2016-08-10 the VIX was trading at 12.1 at the 8.6 percentile. The 14-day VIX Volga was estimated at 8.1 its 13.9 percentile and the shockindex at 0.6 or its 28.4 percentile.

The above charts are useful, however their visualisation is quite limiting. On the one hand we need quite a few charts to present the data on the other hand it is difficult to show the full VIX history going back to 1990 as this would make the charts unreadable. Therefore clustering and aggregating the whole data into a single chart should be useful to the end user. To answer this I use a mapping technique developed by Kohonen in the 1980′. It uses an unsupervised neural network to re-arrange data around meaningful clusters. Though computationally complex is a practical way to summarise multidimensional data into a low (usually 2) dimensional system.

The below chart shows how the VIX price history was split into 4 distinct clusters. Those clusters where computed not only as a function of the VIX level but also as a function of the other variables, namely VIX volga and Shockindex.

Since 1990 the VIX traded 58 % of the time in Cluster 1, 30 % in Cluster 2, 10 % in Cluster 3 and 2 % in Cluster 4. Overall the layering provided seems quite intuitive as the increase in risk and time spent in each cluster points toward what would generally be expected from market risk regimes ranging from low to high risk.

plot of chunk cluster_chart

In the chart below we zoom on the various regimes within which the VIX has been trading for the current year. so far it traded 63 % of the time in Cluster 1, 21 % in Cluster 2, 17 % in Cluster 3 and 0 % in Cluster 4.

plot of chunk ytdriskchart

Finally the below chart shows a Self Organising Map of the above mentioned risk metrics. The data has been grouped and colored as a function of four clusters of increasing market risk regimes. Obviously as shown on the map, the minimum level of volatility pertains to cluster 1 and the highest to cluster4. The current regime and its progression from 21 days ago is also highlighted on the map.

plot of chunk SOM_chart

Always happy to discuss any of the above, feel free to reach me at: Pierre@argonautae.co.uk

Already Non Farm Payrolls time again…

It is NFP time again, sweepstakes must be rife on trading floors around the world…..So it is time to use my NFP forecasting model which leverages on both an ARIMA forecast and a simple linear regression using the ADP as the independent variable to generate a mixed forecast of the NFP.

Not surprisingly the ADP and the NFP data releases are positively correlated, thoug this has been significantly time varying. Also the NFP tend to be generally twice as volatile than the ADP numbers, highlighting their challenging nature for a forecaster.

plot of chunk chartsplot of chunk charts

##       ADP                 NFP           
##  "Min.   :-881.19  " "Min.   :-823.00  "
##  "1st Qu.: -31.53  " "1st Qu.: -30.75  "
##  "Median : 142.53  " "Median : 124.50  "
##  "Mean   :  57.12  " "Mean   :  64.31  "
##  "3rd Qu.: 196.57  " "3rd Qu.: 218.00  "
##  "Max.   : 356.56  " "Max.   : 522.00  "

In the below chart I use a 24-month rolling Granger Causality test to investigate the causality at a lag of one between ADP and NFP releases. The chart shows the P-values of the test which indicate in which way the causality,if any, flows. Clearly sometime the ADP has been a leading indicator, other times not.

plot of chunk causality

In the below I use an optimising algorithm to find the best ARIMA over the entire sample so as to generate a trend forecast of the NFP. The wide confidence intervals clearly highlight that those forecasts are associated with a high degree of of uncertainty.

plot of chunk arimachart

Finally I use a mixed model to generate an estimate of what the next NFP release will be. The forecast is derived both from a linear regression model forecast with the ADP as the independent variable and also from the forecast generated by the previously fitted ARIMA model.

The LM model forecasts an NFP release of : 181,026 whilts the ARIMA calls for a release of: 196,490 . This contributes to a mixed model forecast of : 188,190

US Stock Market Risk Report Update…

The following report provides an update on some of the metrics I use to classify market risk. The word classify is more appropriate as I think that in essence you cannot forecast risk but rather attempt to adjust to it into a timely fashion. Clearly risk would not be a risk if you could forecast it accurately. However as there is generally some degree of persistence in risk regimes, using a dynamic classification may be a useful approach for portfolio rebalancing and hedging. In this report I use the VIX as a measure of global financial market risk. The same methodology can be successfully applied to other inputs. Feel free to contact me at Pierre@argonautae.com for more information on the subject.

In my approach I recognise that the nominal level of implied volatility is a crude metric of risk therefore I also use two other measures. The VIX Volga, a measure of uncertainty of risk and the ShockIndex a measure of market dislocation. VIX Volga is simply the volatility of the VIX over a given period. This measure highlights how uncertain and unstable the level of risk has become. Though positively correlated to the level of the VIX the VIX Volga is not necessarily dependent on it. You can have a high level of volga whilst the VIX is trading at rather innocuous levels. This is not a trivial observation as the leverage undertaken by market participants tends to be an inverse function of market volatility which implies a greater vulnerability when volatility becomes uncertain at low levels and therefore cannot be accurately budgeted fo r. The ShockIndex is the ratio between the Volga and VIX at the beginning the historical window chosen to evaluate the Volga. It quantifies sharp changes and acceleration in risk levels. Historically it has proven to be a good classifying measure for market event risks.

The below charts shows those three measures both relative to a time axis and their historical distribution. The red lines are the 95% confidence intervals, the purple line the median. The blue line highlight the current level. The VIX Volga and ShockIndex in this report are evaluated over a period of 14 days. The medians and 95% confidence intervals are calculated over the full history going back to 1990 though the charts shows only the recent years.

plot of chunk riskchart

At close of business the 2016-08-02 the VIX was trading at 13.4 at the 19.7 percentile. The 14-day VIX Volga was estimated at 9.2 its 20.7 percentile and the shockindex at 0.6 or its 32.4 percentile.

The above charts are useful, however their visualisation is quite limiting. On the one hand we need quite a few charts to present the data on the other hand it is difficult to show the full VIX history going back to 1990 as this would make the charts unreadable. Therefore clustering and aggregating the whole data into a single chart should be useful to the end user. To answer this I use a mapping technique developed by Kohonen in the 1980′. It uses an unsupervised neural network to re-arrange data around meaningful clusters. Though computationally complex is a practical way to summarise multidimensional data into a low (usually 2) dimensional system.

The below chart shows how the VIX price history was split into 4 distinct clusters. Those clusters where computed not only as a function of the VIX level but also as a function of the other variables, namely VIX volga and Shockindex.

Since 1990 the VIX traded 49 % of the time in Cluster 1, 39 % in Cluster 2, 10 % in Cluster 3 and 2 % in Cluster 4. Overall the layering provided seems quite intuitive as the increase in risk and time spent in each cluster points toward what would generally be expected from market risk regimes ranging from low to high risk.

plot of chunk cluster_chart

In the chart below we zoom on the various regimes within which the VIX has been trading for the current year. so far it traded 52 % of the time in Cluster 1, 29 % in Cluster 2, 19 % in Cluster 3 and 0 % in Cluster 4.

plot of chunk ytdriskchart

Finally the below chart shows a Self Organising Map of the above mentioned risk metrics. The data has been grouped and colored as a function of four clusters of increasing market risk regimes. Obviously as shown on the map, the minimum level of volatility pertains to cluster 1 and the highest to cluster4. The current regime and its progression from 21 days ago is also highlighted on the map.

plot of chunk SOM_chart

Always happy to discuss any of the above, feel free to reach me at: Pierre@argonautae.co.uk

Trade Weighted Currency Indices Stretch Map

Trade Weighted Currency Indices Report

Wed Aug 03 20:21:35 2016

The following report aims to provide a gauge to the current strenght of major currencies. For doing so I use the Bank of England Trade weighted Exchange rate indices and a standardised statistical measures of price deviation to provide an estimate of how stretched major currencies are on a trade weighted perspective.

plot of chunk linechart

I first calculate the T-stat of the mean price deviations over a rolling period of 61 days. The charts below show the results for each currency over the last 500 days. The purple line represents the median value since 1990-01-03 and the red lines represent the 95% confidence intervals. Therefore if the value is above or below those the deviation of the given currency would be deemed as atypical relative to what #would be expected under a normal distribution and therefore overbought/oversold.

plot of chunk rolling chart

The following Map chart shows how stretched the currencies are over time horizons ranging from 1-month to 1-year. The bigger the square the most significant the upside (green) or downside (red) of currencies over the given period.

plot of chunk stretch map
The charts below show how the daily changes in the Trade weighted indices have correlated since January 1990 and since the begining of 2015.

plot of chunk correlation
Finally, the following provide an ARIMA forecast for each of the trade weighted indices. My script selects the best ARIMA fit over the previous 250-day to generate a forecast for the next 21 days.
It also shows the forecast confidence intervals.

plot of chunk arimaforecastplot of chunk arimaforecastplot of chunk arimaforecast