1<!DOCTYPE html><html lang="en"><head><title>Investment Strategies and Themes | StockViz</title><meta charset="utf-8"><meta name="keywords" content="quant, finance, india, investing, value, momentum"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto"><link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css"><link rel="stylesheet" href="/stylesheets/main.css"><style>.datepicker table tr td { 2 font-size: 10px; 3 width: 20px; 4 height: 20px; 5} 6 7.table-fit { 8 width: 1px; 9} 10 11input[type='number'] { 12-moz-appearance:textfield; 13} 14 15input::-webkit-outer-spin-button, 16input::-webkit-inner-spin-button { 17 -webkit-appearance: none; 18}</style>
18<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
18<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/popper.min.js"></script>
18<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>
18<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>
18<script src="https://cdnjs.cloudflare.com/ajax/libs/numeral.js/2.0.6/numeral.min.js"></script>
18<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
18<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"></script>
18<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/async.min.js"></script>
18<script src="https://unpkg.com/[email protected]/dist/axios.min.js"></script>
18<script src="https://kit.fontawesome.com/f0847ae128.js"></script>
18<script src="/socket.io/socket.io.js"></script>
18<script>numeral.zeroFormat("-"); 19numeral.nullFormat("");</script>
19</head><body><div id="vueApp"> 20<main role="main" class="container-fluid"> 21<nav id="topheader" class="navbar navbar-expand-lg navbar-dark bg-primary mb-3"> 22<a class="navbar-brand" href="/">StockViz</a> 23<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> 24<span class="navbar-toggler-icon"></span> 25</button> 26<div class="collapse navbar-collapse" id="navbarSupportedContent"> 27<ul class="navbar-nav w-100"> 28<li class="nav-item"> 29<a class='nav-link' target='_blank' href="https://stockviz.github.io/reports01/macro/rp-bnd.html">Macro <sup><i class="fas fa-external-link-alt"></i></sup></a> 30</li> 31<li class="nav-item"> 32<a class='nav-link' v-bind:class="window.location.pathname === '/themes' ? ['active'] : []" href="/themes">Investment Strategies</a> 33</li> 34<li class="nav-item"> 35<a class='nav-link' href="https://stockviz.biz/category/investing-insight/">Blog</a> 36</li> 37<li class="nav-item dropdown"> 38<a class="nav-link dropdown-toggle" v-bind:class="window.location.pathname.includes('/account') ? ['active', 'underline'] : (!loggedIn ? ['disabled'] : [])" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Account</a> 39<div class="dropdown-menu"> 40<a class="dropdown-item" v-bind:class="window.location.pathname === '/account/portfolio' ? ['active', 'bg-info'] : []" href="/account/portfolio">Portfolio</a> 41<a class="dropdown-item" v-bind:class="window.location.pathname === '/account/analysis' ? ['active', 'bg-info'] : []" href="/account/analysis">Analysis</a> 42<a class="dropdown-item" v-bind:class="window.location.pathname === '/account/transactions' ? ['active', 'bg-info'] : []" href="/account/transactions">Transactions</a> 43<a class="dropdown-item" v-bind:class="window.location.pathname === '/account/ledger' ? ['active', 'bg-info'] : []" href="/account/ledger">Ledger</a> 44<a class="dropdown-item" v-bind:class="window.location.pathname === '/account/contracts' ? ['active', 'bg-info'] : []" href="/account/contracts">Contracts</a> 45<div class="dropdown-divider"></div> 46<a class="dropdown-item" v-bind:class="window.location.pathname === '/account/password' ? ['active', 'bg-info'] : []" href="/account/password">Change Password</a> 47</div> 48</li> 49<div class="ml-auto" v-if="!loggedIn"> 50<li class="nav-item"> 51<a class='nav-link' v-bind:class="window.location.pathname === '/login' ? ['active'] : []" href="/login"><i class="fas fa-sign-in-alt"></i> login</a> 52</li> 53</div> 54<div class="ml-auto" v-if="loggedIn"> 55<li class="nav-item"> 56<a class='nav-link' href="#" @click.prevent="logout">Logout <i class="fas fa-sign-out-alt"></i></a> 57</li> 58</div> 59</ul> 60</div> 61</nav>
61<script src="/javascripts/components/global.js"></script>
61<meta name="description" content="Quantitative value and momentum investment strategies."><div class="row"> 62<div class="col-md-10 col-sm-12"> 63<div class="h3 float-left">Investment Strategies</div> 64<div class="custom-control custom-switch d-none d-md-table-cell" v-if="loggedIn && userLevel === 4"> 65<a class="btn btn-danger" role="button" href="/themes-admin">Admin</a> 66</div> 67</div> 68<div class="col-md-2 col-sm-12"> 69<div class="border border-secondary rounded-sm p-1 m-1"> 70<div class="float-right custom-control custom-switch d-none d-md-table-cell"> 71<input type="checkbox" class="custom-control-input" id="customSwitch1" v-model="tableView"> 72<label class="custom-control-label" for="customSwitch1">God mode</label> 73</div> 74<div class="btn-group btn-group-toggle"> 75<label class="btn btn-sm btn-secondary" :class="[selectedReturnType === 'gross' ? 'active' : '']"> 76<input type="radio" autocomplete="off" v-model="selectedReturnType" value="gross">Gross 77</label> 78<label class="btn btn-sm btn-secondary" :class="[selectedReturnType === 'net' ? 'active' : '']"> 79<input type="radio" autocomplete="off" v-model="selectedReturnType" value="net">Net 80</label> 81</div> 82</div> 83</div> 84</div> 85<div class="row" v-if="!tableView"> 86<div class="col-md-12 col-sm-12"> 87<nav id="themeheader" class="navbar navbar-expand-lg navbar-dark bg-secondary mb-3"> 88<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent2" aria-controls="navbarSupportedContent2" aria-expanded="false" aria-label="Toggle navigation"> 89<span class="navbar-toggler-icon"></span> 90</button> 91<div class="collapse navbar-collapse" id="navbarSupportedContent2"> 92<ul class="navbar-nav w-100"> 93<li class="nav-item" v-for="t in tags"> 94<a class="nav-link" href="#" :class="t === selectedTag ? 'active' : ''" @click.prevent="selectedTag = t">{{ themeMetas !== null ? themeMetas.find(x=>x.TAG === t).HEADING : '' }}</a> 95</li> 96<div class="ml-auto" v-show="loading"> 97<li class="nav-item"> 98<div class="spinner-border text-dark" role="status"> 99<span class="sr-only">Loading...</span> 100</div> 101</li> 102</div> 103</ul> 104</div> 105</nav> 106</div> 107</div> 108<div class="row" v-if="!tableView"> 109<div class="col-md-12 col-sm-12"> 110<div class="h5" v-if="selectedTagMeta">{{ selectedTagMeta.HEADING }}</div> 111<div class="lead" v-if="selectedTagMeta" v-html="selectedTagMeta.DESCRIPTION"></div> 112</div> 113</div> 114<div class="row mt-3" v-if="!tableView"> 115<div class="col-md-12 col-sm-12"> 116<div class="card-deck"> 117<div class="col-md-4 col-sm-12 mb-3" v-for="theme in themes"> 118<div class="card" :class="[theme.MODEL_20 ? (theme.MODEL_20 > 0 ? 'border-success' : 'border-danger') : '']" style="cursor:pointer" @click="window.open((theme.GROUP_TAG !== 'Q-DERIV' ? '/theme-eq/' : '/theme-deriv/') + theme.MODEL_ID, '_blank');"> 119<div class="card-header h5">{{theme.NAME_PUBLIC}}</div> 120<div class="card-body"> 121<h6 class="card-subtitle mb-2 text-muted">{{theme.SHORT_DESCRIPTION}}</h6> 122<div class="card-text" v-if="theme.MODEL_20 && selectedReturnType === 'gross'"> 123<div><span>20-day returns:</span> <span v-bind:class="[theme.MODEL_20 > 0 ? 'text-success' : 'text-danger']">{{numeral(theme.MODEL_20).format('+,.00%')}}</span></div> 124<div><span>heretofore:</span> <span v-bind:class="[theme.MODEL_2147483647 > 0 ? 'text-success' : 'text-danger']">{{numeral(theme.MODEL_2147483647).format('+,.00%')}} <small>Cum.</small> / {{numeral(theme.MODEL_ANN_2147483647).format('+,.00%')}} <small>CAGR</small></span></div> 125</div> 126<div class="card-text" v-if="theme.MODEL_BRK_20 && selectedReturnType === 'net'"> 127<div><span>20-day returns:</span> <span v-bind:class="[theme.MODEL_BRK_20 > 0 ? 'text-success' : 'text-danger']">{{numeral(theme.MODEL_BRK_20).format('+,.00%')}}</span></div> 128<div><span>heretofore:</span> <span v-bind:class="[theme.MODEL_BRK_2147483647 > 0 ? 'text-success' : 'text-danger']">{{numeral(theme.MODEL_BRK_2147483647).format('+,.00%')}} <small>Cum.</small> / {{numeral(theme.MODEL_BRK_ANN_2147483647).format('+,.00%')}} <small>CAGR</small></span></div> 129</div> 130<div class="card-text" v-if="!(theme.MODEL_20)"> 131<div> </div> 132<div> </div> 133</div> 134</div> 135<div class="card-footer"> 136<small class="text-muted"><div class='text-left float-left'>created on {{ moment(theme.CREATED_DATE).format('YYYY-MM-DD') }}</div><div class='text-right float-right'>{{theme.GROUP_TAG}}</div></small> 137</div> 138</div> 139</div> 140</div> 141</div> 142</div> 143<div class="row" v-if="tableView && tableLoading"> 144<div class="col-md-12 col-sm-12"> 145<div class="progress progress-sm"> 146<div class="progress-bar bg-success" role="progressbar" :style="{ width: `${progress}%` }" :aria-valuenow="progress" aria-valuemin="0" aria-valuemax="100"></div> 147</div> 148</div> 149</div> 150<div class="row" v-if="tableView"> 151<div class="col-md-12 col-sm-12"> 152<div class="btn-group btn-group-toggle border border-secondary rounded-sm"> 153<label class="btn btn-sm btn-light" :class="[tableTags.includes(t) ? 'active' : '']" v-for="t in tags"> 154<input type="checkbox" autocomplete="off" v-model="tableTags" :value="t">{{t}} 155</label> 156</div> 157</div> 158</div> 159<div class="row" v-if="tableView"> 160<div class="col-md-12 col-sm-12"> 161<table class="table table-sm table-bordered"> 162<thead class="thead-light"> 163<tr> 164<th><div class="float-left">Class</div><div class="float-right" v-on:click="sortTable('GROUP_TAG')"><i :class="[sortColumnName === 'GROUP_TAG' ? 'fas fa-arrows-alt-v' : 'fas fa-sort']"></i></div></th> 165<th><div class="float-left">Name</div><div class="float-right" v-on:click="sortTable('NAME_PUBLIC')"><i :class="[sortColumnName === 'NAME_PUBLIC' ? 'fas fa-arrows-alt-v' : 'fas fa-sort']"></i></i></div></th> 166<th><div class="float-left">Created</div><div class="float-right" v-on:click="sortTable('CREATED_DATE')"><i :class="[sortColumnName === 'CREATED_DATE' ? 'fas fa-arrows-alt-v' : 'fas fa-sort']"></i></i></div></th> 167<th><div class="float-left">20-day Returns</div><div class="float-right" v-on:click="sortTable(selectedReturnType === 'gross' ? 'MODEL_20' : 'MODEL_BRK_20')"><i :class="[sortColumnName === 'MODEL_20' || sortColumnName === 'MODEL_BRK_20' ? 'fas fa-arrows-alt-v' : 'fas fa-sort']"></i></div></th> 168<th><div class="float-left">50-day Returns</div><div class="float-right" v-on:click="sortTable(selectedReturnType === 'gross' ? 'MODEL_50' : 'MODEL_BRK_50')"><i :class="[sortColumnName === 'MODEL_50' || sortColumnName === 'MODEL_BRK_50' ? 'fas fa-arrows-alt-v' : 'fas fa-sort']"></div></th> 169<th><div class="float-left">100-day Returns</div><div class="float-right" v-on:click="sortTable(selectedReturnType === 'gross' ? 'MODEL_100' : 'MODEL_BRK_100')"><i :class="[sortColumnName === 'MODEL_100' || sortColumnName === 'MODEL_BRK_100' ? 'fas fa-arrows-alt-v' : 'fas fa-sort']"></div></th> 170<th><div class="float-left">200-day Returns</div><div class="float-right" v-on:click="sortTable(selectedReturnType === 'gross' ? 'MODEL_200' : 'MODEL_BRK_200')"><i :class="[sortColumnName === 'MODEL_200' || sortColumnName === 'MODEL_BRK_200' ? 'fas fa-arrows-alt-v' : 'fas fa-sort']"></div></th> 171<th><div class="float-left">500-day Returns</div><div class="float-right" v-on:click="sortTable(selectedReturnType === 'gross' ? 'MODEL_500' : 'MODEL_BRK_500')"><i :class="[sortColumnName === 'MODEL_500' || sortColumnName === 'MODEL_BRK_500' ? 'fas fa-arrows-alt-v' : 'fas fa-sort']"></div></th> 172<th><div class="float-left">1000-day Returns</div><div class="float-right" v-on:click="sortTable(selectedReturnType === 'gross' ? 'MODEL_1000' : 'MODEL_BRK_1000')"><i :class="[sortColumnName === 'MODEL_1000' || sortColumnName === 'MODEL_BRK_1000' ? 'fas fa-arrows-alt-v' : 'fas fa-sort']"></div></th> 173<th><div class="float-left">Returns since inception</div><div class="float-right" v-on:click="sortTable(selectedReturnType === 'gross' ? 'MODEL_2147483647' : 'MODEL_BRK_2147483647')"><i :class="[sortColumnName === 'MODEL_2147483647' || sortColumnName === 'MODEL_BRK_2147483647' ? 'fas fa-arrows-alt-v' : 'fas fa-sort']"></div></th> 174</tr> 175</thead> 176<tbody v-for="item in themesAll.filter(x=>tableTags.includes(x.GROUP_TAG))"> 177<tr> 178<td>{{item.GROUP_TAG}}</td> 179<td><span style="cursor:pointer" @click="window.open((item.GROUP_TAG !== 'Q-DERIV' ? '/theme-eq/' : '/theme-deriv/') + item.MODEL_ID, '_blank');" >{{item.NAME_PUBLIC}}</span></td> 180<td><div class="text-right">{{moment(item.CREATED_DATE).format("YYYY-MMM-DD")}}</div></td> 181<td><div class="text-right" v-bind:class="[(selectedReturnType === 'gross' && item.MODEL_20 > 0) || (selectedReturnType === 'net' && item.MODEL_BRK_20 > 0) ? 'text-success' : 'text-danger']">{{numeral(selectedReturnType === 'gross' ? item.MODEL_20 : item.MODEL_BRK_20).format('+,.00%')}}</div></td> 182<td><div class="text-right" v-bind:class="[(selectedReturnType === 'gross' && item.MODEL_50 > 0) || (selectedReturnType === 'net' && item.MODEL_BRK_50 > 0) ? 'text-success' : 'text-danger']">{{numeral(selectedReturnType === 'gross' ? item.MODEL_50 : item.MODEL_BRK_50).format('+,.00%')}}</div></td> 183<td><div class="text-right" v-bind:class="[(selectedReturnType === 'gross' && item.MODEL_100 > 0) || (selectedReturnType === 'net' && item.MODEL_BRK_100 > 0) ? 'text-success' : 'text-danger']">{{numeral(selectedReturnType === 'gross' ? item.MODEL_100 : item.MODEL_BRK_100).format('+,.00%')}}</div></td> 184<td><div class="text-right" v-bind:class="[(selectedReturnType === 'gross' && item.MODEL_200 > 0) || (selectedReturnType === 'net' && item.MODEL_BRK_200 > 0) ? 'text-success' : 'text-danger']">{{numeral(selectedReturnType === 'gross' ? item.MODEL_200 : item.MODEL_BRK_200).format('+,.00%')}}</div></td> 185<td><div class="text-right" v-bind:class="[(selectedReturnType === 'gross' && item.MODEL_500 > 0) || (selectedReturnType === 'net' && item.MODEL_BRK_500 > 0) ? 'text-success' : 'text-danger']">{{numeral(selectedReturnType === 'gross' ? item.MODEL_500 : item.MODEL_BRK_500).format('+,.00%')}}</div></td> 186<td><div class="text-right" v-bind:class="[(selectedReturnType === 'gross' && item.MODEL_1000 > 0) || (selectedReturnType === 'net' && item.MODEL_BRK_1000 > 0) ? 'text-success' : 'text-danger']">{{numeral(selectedReturnType === 'gross' ? item.MODEL_1000 : item.MODEL_BRK_1000).format('+,.00%')}}</div></td> 187<td><div class="text-right" v-bind:class="[(selectedReturnType === 'gross' && item.MODEL_2147483647 > 0) || (selectedReturnType === 'net' && item.MODEL_BRK_2147483647 > 0) ? 'text-success' : 'text-danger']">{{numeral(selectedReturnType === 'gross' ? item.MODEL_2147483647 : item.MODEL_BRK_2147483647).format('+,.00%')}}</div></td> 188</tr> 189</tbody> 190</table> 191</div> 192</div>
192<script>var urlTag = ""; 193</script>
193<script src="/javascripts/themes-client.js"></script>
193</main> 194<div class="footerfix"></div> 195<footer class="footer bg-light text-center"> 196<div class="container"> 197<ul class="list-inline"> 198<li class="list-inline-item"><a href="https://stockviz.biz/2012/11/28/about-us/">about</a></li> 199<li class="list-inline-item"><a href="https://stockviz.biz/2012/11/28/contact-us/">contact</a></li> 200<li class="list-inline-item"><a href="https://stockviz.biz/the-stockviz-demat-account/">pricing</a></li> 201<li class="list-inline-item"><a href="https://stockviz.biz/disclaimer/">disclaimer</a></li> 202<li class="list-inline-item"><a href="https://stockviz.biz/faq-toc/">faqs</a></li> 203<li class="list-inline-item"><a href="https://stockviz.substack.com/">newsletter</a></li> 204<li class="list-inline-item"><a href="https://stockviz.github.io/reports01/index/rp-vol-NIFTY.html">dashboards</a></li> 205</ul> 206<small>© SAS DATA ANALYTICS PVT. LTD. 2013-{{moment().format("YYYY")}}</small> 207</div> 208</footer> 209</div></body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.