Kill Zones

Kill zones are really liquidity events. Many different market participants often come together and act around these events. The activity itself may be event driven (margin calls or options exercise related activity), portfolio management driven (buy-on-close and asset allocation rebalancing orders) or institutionally driven (larger players needing liquidity to get filled in size) or a combination of any/all three. The point is, this intense cross current of activity at a very specific point in time often occurs near significant technical levels and trends established coming out of these events often persist until the next Kill Zone in approached/entered.

Specifically, there are three Kill Zones and each has its own importance/significance.

1. Asian Kill Zone (1900 - 2300 EST) Considered the "institutional" zone, this zone represents both the launch pad for new trends and also too a reloading area from the post American session. It is the start of a new day (or week) for the world and as such it makes sense this zone will often set the tone for the rest of the world's trading day. Since it is very wide (4 hours) one should pay attention to the Tokyo open (2100 EST) the Beijing open (2120 EST) and the Sydney open (0650 EST previous day).

2. London Kill Zone (0200 - 0400 EST) Considered the center of the financial universe for more than 500 years, Europe still carries a lot of influence within the banking world. Many larger players use the Euro session to establish their positions. As such, the London open often sees the most significant trend establishment activity through any given trading day. Indeed, it has been suggested 80% of all weekly trends are established through Tuesday's London Kill Zone.

3. New York Kill Zone (0830 - 1030 EST) The United States is still by far the world's largest economy and so by default New York's open carries a lot of weight and often comes with a big injection of liquidity. Indeed, most of the world's trade-able assets are priced in US dollars which gives even more significance to political and economic activity within this region. Because it comes relatively late in the globe's trading day, this Kill Zone often sees violent price swings within it's first hour leading to the time tested adage "never trust the first hour of North American trading.

Additional notes:
It has become apparent these Kill Zones are evolving over time and the course of world history. Since the end of the second world war, New York has slowly encroached on London's place as the global center for commercial banking. So much so through the later part of the 20th century New York was considered indeed, the new center of the financial universe. With the end of the cold war that leadership seems to have shifted back toward Europe and away from The United States. Additionally, Japan has slowly lost its former predominance within the global economic landscape while Beijing's has risen dramatically.

Only time will tell how these kill zones will evolve given each region's ever changing political, economic and socioeconomic influences.

Trading Notes:
If you have specific levels of interest odds are the bigger players have the same levels too. If it is indeed a solid level, look for price to trade to your level through the kill zone because the zone is a liquidity event where the bigger players can find enough size to get their big orders filled.

Try to avoid taking positions heading into Kill Zones and look for confirmation of your levels coming out of the event. For the more advanced trader, look to take positions on those level hits through the zone but understand higher time frame players often have far deeper pockets then day traders and can endure far more volatility then us little guys.

Thanks for the contribution to @CRInvestor and @ICT_MHuddleston
Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in a publication is governed by House Rules. You can favorite it to use it on a chart.


The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this script on a chart?
// Created by https://www.tradingview.com/u/oscarvs @ 18 October 2014 | @theoscarvs
// Inspired by @ICT_MHuddleston concepts and @CRInvestor courses, code based on @ChrisMoody scripts
// https://github.com/oscarvs/bitcoin-killzones
// Time sessions are directly sync from exchange/tv data (Change manually if you need to adjust DST Daylight saving time)

study(title="Bitcoin Kill Zones v2 [oscarvs]",shorttitle="Bitcoin Kill Zones v2", overlay=true)
timeinrange(res, sess) => time(res, sess) != 0

// **** Checkboxes and custom Session
iKZNY = input(true, title="New York Kill Zone")
iOpenKZLondon = input(true, title="London Open Kill Zone")
iCloseKZLondon = input(true, title="London Close Kill Zone")
iAsiaKZ = input(true, title="Asia Kill Zone")
KZNY = input('1230-1430', type=session, title="New York Kill Zone")
LondonOpenKZ = input('0600-0800', type=session, title="London Open Kill Zone")
LondonCloseKZ = input('1500-1700', type=session, title="London Close Kill Zone")
AsiaKZ = input('2300-0300', type=session, title="Asia Kill Zone")

iRealOpenSessionAlertBar = input(true, title="Real Open Session Alert Bar")
NYOpenAlertBar = input('1330-1345', type=session, title="New York Open Session")
LondonOpenAlertBar = input('0700-0715', type=session, title="London Open Session")
LondonCloseAlertBar = input('1545-1600', type=session, title="London Close Session")
AsiaOpenAlertBar = input('0000-0015', type=session, title="Asia Open Session")

// **** Logic
sessToUse = iKZNY == 1 ? KZNY : '0000-0000'
sessToUse2 = iRealOpenSessionAlertBar == 1 ? NYOpenAlertBar : '0000-0000'
sessToUse3 = iOpenKZLondon == 1 ? LondonOpenKZ : '0000-0000'
sessToUse4 = iRealOpenSessionAlertBar == 1 ? LondonOpenAlertBar : '0000-0000'
sessToUse5 = iCloseKZLondon == 1 ? LondonCloseKZ : '0000-0000'
sessToUse6 = iRealOpenSessionAlertBar == 1 ? LondonCloseAlertBar : '0000-0000'
sessToUse7 = iAsiaKZ == 1 ? AsiaKZ : '0000-0000'
sessToUse8 = iRealOpenSessionAlertBar == 1 ? AsiaOpenAlertBar : '0000-0000'

// *** Apply custom rules
bgPlot = (iKZNY == 0 ? time(period) : time(period, sessToUse)) 
bgPlot2 = (iRealOpenSessionAlertBar == 0 ? time(period) : time(period, sessToUse2)) 
bgPlot3 = (iOpenKZLondon == 0 ? time(period) : time(period, sessToUse3)) 
bgPlot4 = (iRealOpenSessionAlertBar == 0 ? time(period) : time(period, sessToUse4)) 
bgPlot5 = (iCloseKZLondon == 0 ? time(period) : time(period, sessToUse5)) 
bgPlot6 = (iRealOpenSessionAlertBar == 0 ? time(period) : time(period, sessToUse6)) 
bgPlot7 = (iAsiaKZ == 0 ? time(period) : time(period, sessToUse7))
bgPlot8 = (iRealOpenSessionAlertBar == 0 ? time(period) : time(period, sessToUse8))

//**** Plot as background
bgcolor(iKZNY and bgPlot > 0 ? red : na, transp=90) 
bgcolor(iKZNY and iRealOpenSessionAlertBar and bgPlot2 > 0 ? red : na, transp=70) 
bgcolor(iOpenKZLondon and bgPlot3 > 0 ? green : na, transp=90) 
bgcolor(iOpenKZLondon and iRealOpenSessionAlertBar and bgPlot4 > 0 ? green : na, transp=70) 
bgcolor(iCloseKZLondon and bgPlot5 > 0 ? olive : na, transp=90) 
bgcolor(iCloseKZLondon and iRealOpenSessionAlertBar and bgPlot6 > 0 ? olive : na, transp=70) 
bgcolor(iAsiaKZ and bgPlot7 > 0 ? orange : na, transp=90) 
bgcolor(iAsiaKZ and iRealOpenSessionAlertBar and bgPlot8 > 0 ? orange : na, transp=70)