4.1 Data

The Flow-Percentage Sector Strategy developed by EPFR is based on the percentage flow into sectors weighted by the regional emphasis of each fund. In this section, the reader will gain an understanding of the aggregations which can be used to create a signal as well as the methodology behind daily percentage flow calculations.


4.1.1 Aggregations

The first step is defining a subset of data to capture in calculating our signal.

This strategy requires:

  • Actively managed equity funds with a cross-border focus. These are essentially any active fund that has a mandate spanning more than one country.

  • Funds must report daily flows.

  • Monthly sector and country allocations.


Active cross-border equity funds reporting daily fund flows have grown substantially over time. The figure below shows EPFR’s coverage over time of funds used to create this signal for different countries and regions.

Assets ($BB) held in each region by active cross-border equity funds reporting flows daily
EM Japan UK Eurozone US
2007 337 87 137 332 137
2008 316 73 111 238 110
2009 247 45 80 163 86
2010 367 83 135 220 123
2011 457 80 143 278 186
2012 408 76 145 230 197
2013 508 113 182 331 287
2014 606 123 245 472 389
2015 586 142 274 505 422
2016 561 141 253 496 483
2017 728 176 290 732 578
2018 780 212 336 856 678
2019 726 177 272 754 709
2020 740 215 240 795 863
2021 983 261 324 1,008 1,328
2022 700 217 287 753 1,149
* Updated at the end of July each year

Users looking for more specific detail can customize this aggregation even further using EPFR’s fund-level or share class-level granularity. Some good examples would be to consider only active, passive, ETFs or mutual funds, or only institutional or retail share class flows and assets. Users can leverage these tags to different degrees in creating aggregated signals to backtest. Further detail about this is available in the section EPFR Data & Filters.

This can be achieved using fund-level flow and allocation files or by reaching out to EPFR’s Quant Team for customized aggregations.


4.1.2 Daily Percentage Flow

To begin calculating the daily percentage flow, we start with our subset of active cross-border equity funds and by defining a region of interest. For example, if we wanted to focus on US sectors, the region of interest will be the US.

First, we determine a fund’s weighting to a sector within the region of interest, by calculating the product of its stated sector and region allocations, for a given month.

\[\text{Fund Weight}_{i,s,r,m} = \text{Sector Allocation}_{i,s,m} \times \text{Country Allocation}_{i,r,m}\]

Where:

  • \(\text{Fund Weight}\) = weighting to sector \(s\), with emphasis to region \(r\), of fund \(i\), for month \(m\)

Then, to calculate a fund’s dollar flow into a sector within the region of interest, we scale the fund’s flow by the fund’s weighting, on that day. When a fund does not report allocations, we use geographical focus averages. We apply the same procedure to all funds in our universe reporting daily flows and then sum across all funds, to get the total dollar flow into a sector. EPFR releases sector and country allocations of all funds on the \(23^{\text{rd}}\) of each month (or the next available business day) at a monthly frequency. Hence, our calculation assumes constant country and sector weightings between two consecutive release dates within the month.

\[\text{Total Flow}_{s,r,t} = \sum^{N}_{i=m}{\text{Flow}_{i,s,r,t} \times \text{Fund Weight}_{i,s,r,m}}\] Where:

  • \(\text{Total Flow}\) = the total dollar flow into a sector \(s\), with emphasis to region \(r\), across all funds in our universe \(i\), for day \(t\)

We will want to normalize this figure. So, we repeat the process across the same fund’s Assets held under Management (AuM), to get the total AuM held in a sector.

\[\text{Total AuM}_{s,r,t} = \sum^{N}_{i=m}{\text{AuM}_{i,s,r,t} \times \text{Fund Weight}_{i,s,r,m}}\]

Where:

  • \(\text{Total AuM}\) = the total assets held in a sector \(s\), with emphasis to region \(r\), across all funds in our universe \(i\), for day \(t\)

Finally, to find the daily percentage flow for a sector, we divide the total flow by the total AuM held in a country or region.

\[\text{Percentage Flow}_{s,r,t} = 100 \times \frac{\text{Total Flow}_{s,r,t}}{\text{Total AuM}_{s,r,t}}\] Where:

  • \(\text{Percentage Flow}\) = the scaled flow as a percentage of AuM into a sector \(s\), with emphasis to region \(r\), for day \(t\)

We repeat this across all different sectors and regions, for the entire history.


4.1.3 Aggregate Flow File

Users may create flow percentages for their desired country or region, sector aggregations and granularity using the methodology described in the previous section.

Users also have the option to use the Flow-Percentage Sector Strategy files EPFR provides, which are updated daily at 5:00 PM EST with a T+1 day lag, and are available in the user’s EPFR FTP connection under the Strategies folder. There are five different types of Flow-Percentage Sector Strategy files available for different countries or geographic, regions which include: Emerging Markets (EM), Japan (JP), United Kingdom (UK), Eurozone, and the United States (US). Each of these files contain aggregate percentage flow data for 12 sectors (displayed below).


For this demonstration, we will focus on the US so we will be using the file FloPctSector-US-daily.csv, which can be downloaded from the user’s FTP under the folder Strategies/daily and can be stored in the user’s local folder EPFR/daily.

Below shows a snippet of what this file contains:

Strategies/daily/FloPctSector-US-daily.csv

CDisc CStpls Engy Fins HCare Indls Tech Matls Telco Utes REst FinsExREst
20221201 -0.0544133 -0.1501373 -0.1391800 -0.0946229 -0.0443176 -0.0878050 -0.0405456 -0.2197664 0.0158905 -0.0108059 -0.1356850 -0.0815507
20221202 -0.0045566 0.0244751 0.0422289 0.0117102 0.0265640 0.0162280 0.0055618 0.0174281 0.0139732 0.0444272 -0.0020316 0.0160702
20221205 0.0848306 0.1446208 0.1196249 0.0999533 0.0509726 0.1128825 0.0669086 0.0627982 0.0332417 0.0309872 0.0835426 0.1051566
20221206 -0.0256779 -0.0091260 0.0133871 -0.0175412 -0.0031798 -0.0144732 -0.0177890 0.0015587 -0.0039850 -0.0906554 -0.0280658 -0.0141986
20221207 -0.0230160 -0.0134151 -0.0053965 -0.0217519 -0.0130111 -0.0120639 -0.0000646 -0.0782963 -0.0163454 -0.0075162 0.0156094 -0.0336547
20221208 -0.0417034 -0.1278279 0.0053458 -0.0505404 -0.0401745 -0.1007443 -0.0593709 -0.2507193 -0.0462828 -0.0075478 -0.0143200 -0.0621246

note: all strategy files represent indicator as a % figure, i.e. 0.1 is 0.1%


For convenience, save the path to the flow file you choose to use as flow.file. Example shown below:

flow.file <- "C:\\EPFR\\daily\\FloPctSector-US-daily.csv"

4.1.4 Return File

The return file for this strategy should contain the daily passive equity returns for each of the sectors in the flow file, over the period of time and within the country or region the user wants to backtest.

The user can choose to use return data found with their own resources, or they have the option to use a file EPFR provides of Sector Returns, which is available in the user’s EPFR FTP connection under the Returns folder (more information available in Returns Information). The return file that EPFR provides contains Fund Return data and can be used as a proxy to equity market returns. The user can recreate these files using EPFR’s daily flow data with the following equation:

\[\text{Fund Return}_{s,r,t} = 100 \times \frac{\sum^{N}_{i=m} \text{Portfolio Change}_{i,s,r,t}}{\sum^{N}_{i=m} \text{Assets Start}_{i,s,r,t}}\] Where:

  • \(\text{Fund Return}\) = the percentage return of sector \(s\), for country or region \(r\), across all funds in our universe \(i\), for day \(t\)

For this demonstration, we will focus on the US so we will be using the file PsuedoReturns-Sector-US-daily.csv, which can be downloaded from the user’s FTP under the folder Returns/daily and can be stored in the user’s local folder EPFR/returns.

Below shows a snippet of what this file contains:

Returns/daily/PsuedoReturns-Sector-US-daily.csv

CStpls Engy Fins HCare Indls Tech Matls Telco Utes REst
20221201 -0.2431 -0.6401 -0.2838 0.2003 0.0493 0.2252 -0.1012 0.4482 -0.2080 -0.2548
20221202 0.0121 0.0213 -0.0034 0.0365 0.0929 -0.0941 0.0453 0.0024 -0.0109 -0.0171
20221205 -1.6356 -3.2600 -2.4229 -0.6162 -0.8405 -1.9255 -1.0314 -1.3607 -0.9563 -1.8007
20221206 -1.1871 -3.1151 -1.2726 -1.4503 -1.4473 -2.9407 -0.7542 -2.8517 0.3810 -1.1524
20221207 0.0738 -0.3759 -0.0744 0.4393 -0.1259 -0.3715 -0.1486 -0.2057 -0.1489 0.1621
20221208 0.7013 -0.8788 -0.0780 1.3499 0.4440 1.8668 0.4028 -0.5269 0.2874 0.7512

For convenience, save the path to the return file you choose to use as ret.file. Example shown below:

ret.file <- "C:\\EPFR\\returns\\PsuedoReturns-Sector-US-daily.csv"