<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ThinkScripter - Custom ThinkScript Indicators for the thinkorswim Trading Platform</title>
	<atom:link href="http://www.thinkscripter.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.thinkscripter.com</link>
	<description>Custom ThinkScript Indicator Scripts for the Think Or Swim Platform</description>
	<lastBuildDate>Fri, 12 Mar 2010 17:07:52 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Open Call For This Year&#8217;s Top Ten ThinkScript Wish List</title>
		<link>http://www.thinkscripter.com/2010/03/12/open-call-for-this-years-top-ten-thinkscript-wish-list/</link>
		<comments>http://www.thinkscripter.com/2010/03/12/open-call-for-this-years-top-ten-thinkscript-wish-list/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 17:07:52 +0000</pubDate>
		<dc:creator>ThinkScripter</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[thinkscript]]></category>
		<category><![CDATA[wish list]]></category>

		<guid isPermaLink="false">http://www.thinkscripter.com/?p=1984</guid>
		<description><![CDATA[Well it&#8217;s been about a year since I published the &#8220;Top Ten Wish List for ThinkScript&#8221; and we&#8217;ve seen several implemented thus far. For those who don&#8217;t recall, here&#8217;s last year&#8217;s list:
1. Scriptable alerts &#8211; both the regular kind and audio alerts
2. Retrieve h/l/c data from a different aggregation period (i.e. Say I want to [...]]]></description>
			<content:encoded><![CDATA[<p>Well it&#8217;s been about a year since I published the &#8220;<a href="http://www.thinkscripter.com/2009/03/19/top-ten-wish-list-for-thinkscript/">Top Ten Wish List for ThinkScript</a>&#8221; and we&#8217;ve seen several implemented thus far. For those who don&#8217;t recall, here&#8217;s last year&#8217;s list:</p>
<p><span style="color: #006633;">1. Scriptable alerts &#8211; both the regular kind and audio alerts</span><br />
<span style="color: #ffcc00;">2. Retrieve h/l/c data from a different aggregation period (i.e. Say I want to plot a 50 period moving average from a daily chart on my 5 minute intraday chart &#8211; Note that&#8217;s NOT the same as a 50&#215;130=6500 period average on the 5 minute chart)</span><br />
<span style="color: #006633;">3. Change the paintbar color from thinkScript (I&#8217;m running out of combinations of dots, triangles, and squares!)</span><br />
<span style="color: #cc0000;">4. Label the study lines from thinkScript<br />
5. Execute trades from thinkScript (oooo!)<br />
6. Change strategy mode from thinkScript (e.g. from short_entry to long_exit)<br />
7. Capture time and sales data</span><br />
<span style="color: #006633;">8. Vertical lines&#8230;please</span><br />
<span style="color: #cc0000;">9. Capture put/call ratio data<br />
10. A way to directly plot lines on charts from thinkScript (e.g. plot(close[10], close) might draw a line from the close 10 bars ago to the current bar close)</span></p>
<p>1, 3, and 8 have been fully implemented. 2 is partially implemented as you still can&#8217;t grab data from another aggregation period except daily, weekly, and monthly on intraday charts. To do true multiple timeframe indicators, we need the ability to access other timeframe data directly. Furthermore, you should be able to place an indicator from another timeframe on your chart. For example, I would like to be able to put a 60 minute stochastic on my 5 minute chart. For number 4, I would like to be able to add a label on the far right margin for a horizontal plot line. I&#8217;m not sure where we stand with 5 as TOS seems to be focusing on Prodigio. Since the minimum trading requirements for Prodigio require you to be a mini-HFT (check out the minimum monthly contracts traded requirement!), I have no desire to use or code for it. 6 &#8211; Not sure what I was thinking here but I have all but abandoned strategies as a mostly worthless novelty item. TOS needs much more robust backtesting functionality here to regain my interest back. I believe 7 is in the works or at a minimum volume at the ask and offer (I&#8217;ve been told April/May timeframe). 9 &#8211; The data is there, why can&#8217;t we get the feed in thinkScript? And finally, for 10 I want to be able to draw lines directly from thinkScript without using the current continuous plot construct. Said another way, I want access to the TOS drawing tools from within thinkScript. We should be able to programmatically execute any of the drawing tools via thinkScript calls. As I stated before, a simple line might be executed via a command like plotLine(fromBarNumber, fromPrice, toBarNumber, toPrice, extend);</p>
<p>I will be formulating my new Top Ten List in the coming days and I&#8217;d love to hear what y&#8217;all think. Please post your thoughts in the comments below. &#8211; Eric</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkscripter.com/2010/03/12/open-call-for-this-years-top-ten-thinkscript-wish-list/feed/</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>Sine Wave Cycles</title>
		<link>http://www.thinkscripter.com/2010/02/06/sine-wave-cycles/</link>
		<comments>http://www.thinkscripter.com/2010/02/06/sine-wave-cycles/#comments</comments>
		<pubDate>Sat, 06 Feb 2010 19:09:41 +0000</pubDate>
		<dc:creator>ThinkScripter</dc:creator>
				<category><![CDATA[Indicator]]></category>
		<category><![CDATA[custom]]></category>
		<category><![CDATA[cycle]]></category>
		<category><![CDATA[cyclic]]></category>
		<category><![CDATA[Ehlers]]></category>
		<category><![CDATA[MESA]]></category>
		<category><![CDATA[sine wave]]></category>
		<category><![CDATA[support and resistance]]></category>
		<category><![CDATA[thinkscript]]></category>

		<guid isPermaLink="false">http://www.thinkscripter.com/?p=1966</guid>
		<description><![CDATA[By popular request, here is my incarnation of a sine wave cycle support and resistance study similar to Barry Taylor&#8217;s excellent indicator (TradeStation, NinjaTrader, MultiCharts) over at Emini-Watch. The indicator plots support and resistance levels based on John Ehlers&#8217; MESA Sine Wave. The advantage of the MESA Sine Wave is in identifying cyclical turning points [...]]]></description>
			<content:encoded><![CDATA[<p>By popular request, here is my incarnation of a sine wave cycle support and resistance study similar to Barry Taylor&#8217;s excellent indicator (TradeStation, NinjaTrader, MultiCharts) over at <a href="http://emini-watch.com/products/hilbert-sine-wave">Emini-Watch</a>. The indicator plots support and resistance levels based on John Ehlers&#8217; <a href="http://www.mesasoftware.com/mesa.htm">MESA Sine Wave</a>. The advantage of the MESA Sine Wave is in identifying cyclical turning points <em>before</em> they occur; 1/8th of a cycle prior according to Ehlers. The study begins plotting the horizontal dots (white overhead resistance, red support) when a cycle turn is predicted and will continue until the next cycle turn occurs. When the market begins to trend and is no longer cyclic, the price levels are seen to be breakout points. Also pictured is a new version of the <a href="http://www.thinkscripter.com/2009/09/05/thinkscripter-volume-profile/">Volume Profile</a> that allows you to stack as many profiles as you desire to create a plot with greater detail.<br />
<div id="attachment_1971" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.thinkscripter.com/wp-content/uploads/2010/02/SineWaveCycles.png"><img src="http://www.thinkscripter.com/wp-content/uploads/2010/02/SineWaveCycles.png" alt="" title="SineWaveCycles" width="500" height="450" class="size-full wp-image-1971" /></a><p class="wp-caption-text">Sine Wave Cycles Support and Resistance</p></div></p>
<p style="text-align: center;"><a href="http://www.thinkscripter.com/donations"><img src="http://www.thinkscripter.com/wp-content/uploads/2009/08/GoProButton.png" alt="GoProButton" title="GoProButton" width="225" height="75" class="aligncenter size-full wp-image-1487" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkscripter.com/2010/02/06/sine-wave-cycles/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Stochastic Momentum Index with Divergence Signals</title>
		<link>http://www.thinkscripter.com/2010/02/01/stochastic-momentum-index-with-divergence-signals/</link>
		<comments>http://www.thinkscripter.com/2010/02/01/stochastic-momentum-index-with-divergence-signals/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 01:32:49 +0000</pubDate>
		<dc:creator>ThinkScripter</dc:creator>
				<category><![CDATA[Indicator]]></category>
		<category><![CDATA[custom]]></category>
		<category><![CDATA[divergence]]></category>
		<category><![CDATA[SMI]]></category>
		<category><![CDATA[Stochastic Momentum]]></category>
		<category><![CDATA[thinkscript]]></category>

		<guid isPermaLink="false">http://www.thinkscripter.com/?p=1950</guid>
		<description><![CDATA[I&#8217;ve taken the TOS Stochastic Momentum Index, a fast oscillator adept at showing divergences, and added a little twist. Each time the indicator makes a top or bottom and a regular divergence (trend reversal) is detected, an arrow is added indicating the direction of the divergence. The red arrows indicate negative divergence and green positive. [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve taken the TOS Stochastic Momentum Index, a fast oscillator adept at showing divergences, and added a little twist. Each time the indicator makes a top or bottom and a regular divergence (trend reversal) is detected, an arrow is added indicating the direction of the divergence. The red arrows indicate negative divergence and green positive. Hidden divergences (continuation signals) are plotted in white. Also pictured is a custom variation of the <a href="http://www.thinkscripter.com/2009/09/05/thinkscripter-volume-profile/">Volume Profile</a> allowing expanded fidelity by stacking numerous copies of the indicator. A keen eye will also reveal my incarnation of a support and resistance indicator based on sine wave cycles which is under development. Both studies will be included in next weekend&#8217;s <a href="http://www.thinkscripter.com/donations/">Pro Subscriber</a> update.</p>
<div id="attachment_1953" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.thinkscripter.com/wp-content/uploads/2010/02/SMIDIV.png"><img src="http://www.thinkscripter.com/wp-content/uploads/2010/02/SMIDIV.png" alt="" title="SMIDIV" width="500" height="450" class="size-full wp-image-1953" /></a><p class="wp-caption-text">Stochastic Momentum Index with Divergence</p></div>
<p style="text-align: center;"><a href="http://www.thinkscripter.com/donations"><img src="http://www.thinkscripter.com/wp-content/uploads/2009/08/GoProButton.png" alt="GoProButton" title="GoProButton" width="225" height="75" class="aligncenter size-full wp-image-1487" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkscripter.com/2010/02/01/stochastic-momentum-index-with-divergence-signals/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Gap Fill</title>
		<link>http://www.thinkscripter.com/2010/01/28/gap-fill/</link>
		<comments>http://www.thinkscripter.com/2010/01/28/gap-fill/#comments</comments>
		<pubDate>Thu, 28 Jan 2010 22:10:12 +0000</pubDate>
		<dc:creator>ThinkScripter</dc:creator>
				<category><![CDATA[Indicator]]></category>
		<category><![CDATA[custom]]></category>
		<category><![CDATA[gap]]></category>
		<category><![CDATA[gap fill]]></category>
		<category><![CDATA[half gap]]></category>
		<category><![CDATA[thinkscript]]></category>

		<guid isPermaLink="false">http://www.thinkscripter.com/?p=1940</guid>
		<description><![CDATA[By popular request, here is a study that will display a gap opening and it&#8217;s 50% fill line. The plot will dynamically collapse as the gap is filled. It will work on any intraday chart timeframe, 24 hours or regular trading hours so long as the two affected trading days are showing. (Edit: If you [...]]]></description>
			<content:encoded><![CDATA[<p>By popular request, here is a study that will display a gap opening and it&#8217;s 50% fill line. The plot will dynamically collapse as the gap is filled. It will work on any intraday chart timeframe, 24 hours or regular trading hours so long as the two affected trading days are showing. (Edit: If you would like the % Gap Filled box in the upper left, uncomment out the last line of code by removing the #)</p>
<div id="attachment_1942" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.thinkscripter.com/wp-content/uploads/2010/01/GapFill.png"><img src="http://www.thinkscripter.com/wp-content/uploads/2010/01/GapFill.png" alt="" title="GapFill" width="500" height="450" class="size-full wp-image-1942" /></a><p class="wp-caption-text">Gap Fill</p></div>
<p><code># TS_GapFill<br />
# http://www.thinkscripter.com<br />
# thinkscripter@gmail.com<br />
# Last Update 28 Jan 2010</p>
<p>input marketOpenTime = 0930;<br />
input marketCloseTime = 1615;</p>
<p>def yesterdaysClose = close(period = "DAY")[1];</p>
<p>def secondsFromOpen =  secondsFromTime(marketOpenTime);<br />
def secondsTillClose = secondsTillTime(marketCloseTime);<br />
def marketOpen = if secondsFromOpen >= 0 and secondsTillClose >= 0 then 1 else 0;</p>
<p>rec regularHoursOpen = if (secondsFromOpen >= 0 and secondsFromOpen[1] < 0) or<br />
(getDay() != getDay()[1]) then open else regularHoursOpen[1];</p>
<p>def newDay = if getDay() != getDay()[1] then 1 else 0;</p>
<p>rec regHoursHigh = if newDay then high else if marketOpen then<br />
if high > regHoursHigh[1] then high else regHoursHigh[1] else high;<br />
rec regHoursLow = if newDay then low else if marketOpen then<br />
if low < regHoursLow[1] then low else regHoursLow[1] else low;</p>
<p>def yc = if marketOpen then yesterdaysClose else double.nan;<br />
def o = if marketOpen then regularHoursOpen else double.nan;<br />
def hg = o + (yc - o) / 2;</p>
<p>def gapUp = if yc < o then 1 else 0;<br />
def gapDown = if yc > o then 1 else 0;</p>
<p>def gapRemaining = if gapUp then<br />
Max(regHoursLow - yc, 0) else<br />
if gapDown then Max(yc - regHoursHigh, 0) else 0;</p>
<p>def percentRemaining = 100 * gapRemaining / AbsValue(yc - o);<br />
def gapFilled = if percentRemaining == 0 then 1 else 0;<br />
def halfGapFilled = if percentRemaining <= 50 then 1 else 0;</p>
<p>plot gH = if (gapUp and !gapFilled and marketOpen and !newDay[-1])<br />
then regHoursLow else if (gapDown and !gapFilled and marketOpen and !newDay[-1])<br />
then yc else double.nan;<br />
plot gL = if (gapUp and !gapFilled and marketOpen and !newDay[-1])<br />
then yc else if (gapDown and !gapFilled and marketOpen and !newDay[-1])<br />
then regHoursHigh else double.nan;<br />
plot hGF = if !gapFilled and !halfGapFilled and marketOpen and !newDay[-1]<br />
then hg else double.nan;</p>
<p>gH.SetPaintingStrategy(paintingStrategy.DaSHES);<br />
gH.AssignValueColor(if gapDown then color.darK_red else color.dark_green);<br />
gL.SetPaintingStrategy(paintingStrategy.DASHES);<br />
gL.AssignValueColor(if gapDown then color.darK_red else color.dark_green);<br />
hGF.setStyle(curve.LONG_DASH);<br />
hGF.SetDefaultColor(color.dark_gray);<br />
gH.hideBubble();<br />
gL.hideBubble();<br />
hgF.hideBubble();</p>
<p>AddCloud(gH, gL, color.gray, color.gray);<br />
#AddChartLabel(gapUp or gapDown, percentRemaining, " % Gap Remaining", color.white);</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkscripter.com/2010/01/28/gap-fill/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Market Thrust Indicator</title>
		<link>http://www.thinkscripter.com/2010/01/23/market-thrust-indicator/</link>
		<comments>http://www.thinkscripter.com/2010/01/23/market-thrust-indicator/#comments</comments>
		<pubDate>Sat, 23 Jan 2010 05:49:31 +0000</pubDate>
		<dc:creator>ThinkScripter</dc:creator>
				<category><![CDATA[Indicator]]></category>
		<category><![CDATA[ADVN]]></category>
		<category><![CDATA[custom]]></category>
		<category><![CDATA[DECN]]></category>
		<category><![CDATA[DVOL]]></category>
		<category><![CDATA[Market Thrust]]></category>
		<category><![CDATA[thinkscript]]></category>
		<category><![CDATA[UVOL]]></category>

		<guid isPermaLink="false">http://www.thinkscripter.com/?p=1931</guid>
		<description><![CDATA[The internal strength of the market can be gauged using many internal measures including Up Volume, Down Volume, Advancing, and Declining Issues. The Market Thrust indicator combines these four values to produce a single plot that gauges these internals. It is simply a plot of (Advancing Issues X Advancing Volume) &#8211; (Declining Issues x Declining [...]]]></description>
			<content:encoded><![CDATA[<p>The internal strength of the market can be gauged using many internal measures including Up Volume, Down Volume, Advancing, and Declining Issues. The Market Thrust indicator combines these four values to produce a single plot that gauges these internals. It is simply a plot of (Advancing Issues X Advancing Volume) &#8211; (Declining Issues x Declining Volume). On strong trend days the indicator will generally trend one direction all day. The indicator is also particularly adept at showing divergences between price and internals. Added to the upper left corner of the indicator is the Up Volume &#8211; Down Volume as an additional reference. Note the second image below of this week&#8217;s market. The slow grind up on Wednesday afternoon was accompanied by ever worsening internals. The rest, they say, is history. </p>
<p><div id="attachment_1929" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.thinkscripter.com/wp-content/uploads/2010/01/MarketThrust.png"><img src="http://www.thinkscripter.com/wp-content/uploads/2010/01/MarketThrust.png" alt="" title="MarketThrust" width="500" height="450" class="size-full wp-image-1929" /></a><p class="wp-caption-text">Market Thrust</p></div><br />
<a href="http://www.thinkscripter.com/wp-content/uploads/2010/01/MarketThrust2.png"><img src="http://www.thinkscripter.com/wp-content/uploads/2010/01/MarketThrust2.png" alt="" title="MarketThrust2" width="500" height="450" class="aligncenter size-full wp-image-1930" /></a></p>
<p><code># TS_MarketThrust<br />
# http://www.thinkscripter.com<br />
# thinkscripter@gmail.com<br />
# Last Update 22 Jan 2010</p>
<p>declare lower;<br />
input AvePeriod = 10;<br />
input showOnlyToday = YES;</p>
<p>def T1c = (close("$ADVN")*close("$UVOL"))-(close("$DECN")*close("$DVOL"));<br />
plot T1 = if showOnlyToday and getDay()==getLastDay() then T1c else if !showOnlyToday then T1c else double.nan;<br />
T1.setDefaultColor(color.red);<br />
def TAvec = average(T1,AvePeriod);<br />
plot TAve =  if showOnlyToday and getDay()==getLastDay() then TAvec else if !showOnlyToday then TAvec else double.nan;<br />
TAve.setDefaultColor(color.white);</p>
<p>plot zero = 0;<br />
zero.setDefaultColor(color.yellow);</p>
<p>def U = close("$UVOL");<br />
def D = close ("$DVOL");<br />
def DVOL = U - D;</p>
<p>AddChartLabel(yes,DVOL,<br />
"UVOL-DVOL",<br />
 if DVOL > DVOL[1] then color.green else color.red );<br />
 </code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkscripter.com/2010/01/23/market-thrust-indicator/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
	</channel>
</rss>
