<?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/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>技術指標 &#8211; FinLab</title>
	<atom:link href="https://www.finlab.tw/tag/%E6%8A%80%E8%A1%93%E6%8C%87%E6%A8%99/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.finlab.tw</link>
	<description>深入淺出的量化投資，讓你在在茫茫股海中，找到專屬於自己的投資方法</description>
	<lastBuildDate>Sat, 17 Jul 2021 09:04:23 +0000</lastBuildDate>
	<language>zh-TW</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.0.9</generator>

<image>
	<url>https://www.finlab.tw/wp-content/uploads/2020/07/favicon.png</url>
	<title>技術指標 &#8211; FinLab</title>
	<link>https://www.finlab.tw</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">179699571</site>	<item>
		<title>小型股噴發的日子結束了？ADLs 指標顯示：接下來是決定性的時刻！</title>
		<link>https://www.finlab.tw/adls-stock-indicator/</link>
					<comments>https://www.finlab.tw/adls-stock-indicator/#respond</comments>
		
		<dc:creator><![CDATA[FinLab - 韓承佑]]></dc:creator>
		<pubDate>Wed, 14 Jul 2021 14:24:37 +0000</pubDate>
				<category><![CDATA[大盤漲跌]]></category>
		<category><![CDATA[技術面]]></category>
		<category><![CDATA[股票策略]]></category>
		<category><![CDATA[ADL]]></category>
		<category><![CDATA[大盤]]></category>
		<category><![CDATA[技術指標]]></category>
		<guid isPermaLink="false">https://www.finlab.tw/?p=2744</guid>

					<description><![CDATA[雖然大家通常都是討論台積電、鴻海、大立光這種大型股，但做量化投資，小型股反而是比較常被選到的標的。在上半年小型 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>雖然大家通常都是討論台積電、鴻海、大立光這種大型股，但做量化投資，小型股反而是比較常被選到的標的。在上半年小型股噴發之下，可以看到台積電等權值股被冷落，而航運、鋼鐵等小股票漲翻天，但是究竟是不是要反轉了，我們可以用自製的 ADLs 指標來檢驗。這個指標不但可以告訴我們什麼時候要買賣，用在中小型股指數 00733 富邦臺灣中小型股指數上，有非常不錯的成效，<strong>可以避開「所有00733」的大跌</strong>。而今天，這個指標顯示了警訊，讓我們一起來瞭解一下吧！</p>



<h2>ADLs 指標</h2>



<p>這個指標類似於 ADL 上漲下跌家數騰落線，但是我個人不太喜歡騰落線的原因，是因為 ADL 是 non-stationary time series，也就是 ADL 的數值沒有上下界，可以隨時間無限變大，也可以無限變小。</p>



<p>所以我做了一個改良版的 ADL，我把它叫做 ADLs 也就是 ADL-stationary 的簡稱。這個公式計算的方式為：</p>



<p>ADLs = 上漲家數 / 總家數 &#8211; 0.5</p>



<p>就這麼簡單，不需要像是 ADL 一直累加，造成不不要的複雜性。ADL假如大於零，代表當天比較多檔股票上漲，自然大部分的就是賺錢的，市場比較有信心，而當ADLs 小於零，則代表大部分的人都是虧錢的，這時候市場比較容易有恐慌性賣壓，也是比較危險的時候。這個指標看起來會像是下圖：</p>



<figure class="wp-block-image size-large"><img width="1024" height="230" src="https://www.finlab.tw/wp-content/uploads/2021/07/image-1024x230.png" alt="image" class="wp-image-2745" srcset="https://www.finlab.tw/wp-content/uploads/2021/07/image-1024x230.png 1024w, https://www.finlab.tw/wp-content/uploads/2021/07/image-300x67.png 300w, https://www.finlab.tw/wp-content/uploads/2021/07/image-768x172.png 768w, https://www.finlab.tw/wp-content/uploads/2021/07/image.png 1412w" sizes="(max-width: 1024px) 100vw, 1024px" title="小型股噴發的日子結束了？ADLs 指標顯示：接下來是決定性的時刻！ 1"></figure>



<p>畢竟每天的上漲下跌家數，本來就是很隨機的數值，所以上圖還看不出個所以然。我們可以用一些簡單的方式來處理，例如均線，如下圖：</p>



<figure class="wp-block-image size-large"><img loading="lazy" width="1024" height="226" src="https://www.finlab.tw/wp-content/uploads/2021/07/image-1-1024x226.png" alt="image 1" class="wp-image-2746" srcset="https://www.finlab.tw/wp-content/uploads/2021/07/image-1-1024x226.png 1024w, https://www.finlab.tw/wp-content/uploads/2021/07/image-1-300x66.png 300w, https://www.finlab.tw/wp-content/uploads/2021/07/image-1-768x170.png 768w, https://www.finlab.tw/wp-content/uploads/2021/07/image-1.png 1400w" sizes="(max-width: 1024px) 100vw, 1024px" title="小型股噴發的日子結束了？ADLs 指標顯示：接下來是決定性的時刻！ 2"><figcaption>ADLs fast and slow</figcaption></figure>



<p>上圖中使用均線將原本的 ADLs 平滑雙均線，去除雜訊後，我們才看得到週期的規律，這個規律代表什麼呢？ ADLs 取雜訊又有什麼意義呢？接下來就帶大家來感受一下數據。</p>



<h2>ADLs + 均線的意義</h2>



<p>ADLs 代表當天大家的勝率，這個勝率每天影響你我的心情，試想你打開股票未實現損益，一片紅色，心情就超級好，反之一片綠色，心情也好不起來。所以 ADLs + 均線，就代表一段時間，市場平均的勝率（不是很精確的說法，但是容易瞭解），上圖中的藍色就是 ADLs Fast，代表市場短期的勝率，而 ADLs Slow 就是代表長期的勝率，所以</p>



<figure class="wp-block-pullquote"><blockquote><p>ADLs Fast &gt; Slow 大家最近都賺錢</p><cite>FinLab</cite></blockquote></figure>



<p>大家都賺了錢，自然就很開心，於是希望可以賺更多，市場一片喜氣洋洋，反之，就是大家都有點恐懼，造成市場信心潰散，就是比較危險的時刻了。要怎麼證明這是有用的呢？我們可以在 ADLs Fast &gt; Slow 的時候，持有「00733 富邦臺灣中小型股指數」，並檢驗一下，這樣的策略跟單純長期持有此 ETF 會有怎麼樣的差距。</p>



<h2>指標與指數對照</h2>



<p>我們可以對照一下，ADLs 跟「00733 富邦臺灣中小型股指數」的關係如下：</p>



<figure class="wp-block-image size-large"><img loading="lazy" width="1024" height="541" src="https://www.finlab.tw/wp-content/uploads/2021/07/Picture1-1024x541.png" alt="Picture1" class="wp-image-2749" srcset="https://www.finlab.tw/wp-content/uploads/2021/07/Picture1-1024x541.png 1024w, https://www.finlab.tw/wp-content/uploads/2021/07/Picture1-300x159.png 300w, https://www.finlab.tw/wp-content/uploads/2021/07/Picture1-768x406.png 768w, https://www.finlab.tw/wp-content/uploads/2021/07/Picture1-1536x812.png 1536w, https://www.finlab.tw/wp-content/uploads/2021/07/Picture1.png 1572w" sizes="(max-width: 1024px) 100vw, 1024px" title="小型股噴發的日子結束了？ADLs 指標顯示：接下來是決定性的時刻！ 3"><figcaption>ADLs 與富邦台灣中小型股指數</figcaption></figure>



<p>這邊就可以發現，當ADLs Fast 藍色 &lt; Slow 紅色時，市場上大家都賠錢，所以比較恐慌，而指數多辦處於盤整或是下跌，反之，當 ADLs Fast &gt; Slow ，大家都賺錢，所以市場上就很容易出現一波上漲行情。以當前 2021 7/14 號來說，目前處於多空的交界處，也就是有人賺也有人虧錢，幾乎是一樣多的。但是對於未來前景，我不會太樂觀，畢竟小型股已經漲了一波，而且端看圖表，通常 ADLs Fast 藍線大於紅線，變成一座山後，往往都是有一段時間潛水，周而復始不斷交替，各位假如持有小型股，可以稍微留意，見好就收。</p>



<p>接下來，我們就來試試看，假如在只有 ADLs Fast &gt; Slow 的時候持有，不然則空手，看看會發生什麼事情。</p>



<h2>回測結果</h2>



<figure class="wp-block-image size-large"><img loading="lazy" width="1024" height="410" src="https://www.finlab.tw/wp-content/uploads/2021/07/image-3-1024x410.png" alt="image 3" class="wp-image-2748" srcset="https://www.finlab.tw/wp-content/uploads/2021/07/image-3-1024x410.png 1024w, https://www.finlab.tw/wp-content/uploads/2021/07/image-3-300x120.png 300w, https://www.finlab.tw/wp-content/uploads/2021/07/image-3-768x308.png 768w, https://www.finlab.tw/wp-content/uploads/2021/07/image-3.png 1401w" sizes="(max-width: 1024px) 100vw, 1024px" title="小型股噴發的日子結束了？ADLs 指標顯示：接下來是決定性的時刻！ 4"><figcaption>ADLs策略與單純持有00733 富邦臺灣中小型股指數比較</figcaption></figure>



<p>上圖中藍色的為使用 ADLs 策略的績效，而紅色的則是單純持有，你可能會覺得「什麼？阿不是績效都差不多嗎？」「還要每天看買賣家數，也沒比較好？」。假如你有這種想法，就代表你可能剛開始在交易的路上，所以還沒見過太多大風大浪，對我來說，藍色的績效明顯的比紅色好非常多。雖然這兩種方法最後的績效差不多，但是中間的過程差很多，一個是幾乎沒有賠錢，另外一個載浮載沈，就像是人生的終點都是一樣的，但過程可以差很多！</p>



<p>我們利用一些量化數據來檢演兩者的績效：</p>



<pre class="wp-block-preformatted">Stat                 00773 with ADLs    00773
-------------------  -----------------  ----------
Start                2018-05-23         2018-05-23
End                  2021-07-14         2021-07-14
Risk-free rate       0.00%              0.00%

Total Return         130.96%            126.59%
Daily Sharpe         1.93               1.23
Daily Sortino        3.21               1.89
CAGR                 30.52%             29.73%
Max Drawdown         -12.08%            -34.28%
Calmar Ratio         2.53               0.87

MTD                  -7.53%             -2.94%
3m                   4.68%              23.31%
6m                   43.12%             67.50%
YTD                  40.47%             68.91%
1Y                   45.03%             90.04%
3Y (ann.)            33.25%             31.49%
5Y (ann.)            -                  -
10Y (ann.)           -                  -
Since Incep. (ann.)  30.52%             29.73%

Daily Sharpe         1.93               1.23
Daily Sortino        3.21               1.89
Daily Mean (ann.)    28.58%             29.80%
Daily Vol (ann.)     14.83%             24.18%
Daily Skew           0.23               -0.78
Daily Kurt           9.16               6.43
Best Day             6.53%              7.35%
Worst Day            -6.01%             -9.19%</pre>



<p>可以發現，使用 ADLs 的績效，其夏普值高達 1.93，以一個這麼簡易的系統來說，這算是很好的數字。</p>



<h4>夏普值如何看？</h4>



<p>夏普值小於零，代表賠錢的意思，以一個簡易的選股策略來說，一般人波段實單操作，可能是0.7，以一個ETF來說，可能 0.9 就已經很不錯了，而以網路上付費選股策略 1.3 可能會是比較理想的數值，當然也有真的很厲害的選股策略，Sharpe可以到 2 或 3。</p>



<h2>總結</h2>



<p>這篇文章分享自制指標 ADLs ，發現 ADLs 用於小型股的指數有很好的預測效果，使用 ADLs 當作是買賣的濾網，可以 Sharpe 高達 1.9 的回測結果，然而 ADLs 指標對於未來有比較悲觀的預測，大家可以多多留意，心態上不用太積極做多，有賺就好，少賠即可。等 ADLs 方向確認，我也會再提醒大家，可以多多留意FinLab。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.finlab.tw/adls-stock-indicator/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2744</post-id>	</item>
		<item>
		<title>用KD值選股：你還需搭配這三種指標</title>
		<link>https://www.finlab.tw/%e7%94%a8kd%e5%80%bc%e9%81%b8%e8%82%a1%ef%bc%9a%e9%82%84%e9%9c%80%e6%90%ad%e9%85%8d%e9%80%99%e4%b8%89%e7%a8%ae%e6%8c%87%e6%a8%99/</link>
					<comments>https://www.finlab.tw/%e7%94%a8kd%e5%80%bc%e9%81%b8%e8%82%a1%ef%bc%9a%e9%82%84%e9%9c%80%e6%90%ad%e9%85%8d%e9%80%99%e4%b8%89%e7%a8%ae%e6%8c%87%e6%a8%99/#respond</comments>
		
		<dc:creator><![CDATA[FinLab - 韓承佑]]></dc:creator>
		<pubDate>Wed, 22 Jul 2020 07:05:38 +0000</pubDate>
				<category><![CDATA[選股策略]]></category>
		<category><![CDATA[KD]]></category>
		<category><![CDATA[技術指標]]></category>
		<category><![CDATA[程式交易]]></category>
		<guid isPermaLink="false">http://34.96.136.135/?p=758</guid>

					<description><![CDATA[這篇文章將分享一個程式交易策略，以KD值為主，並且搭配其他的指標。有很多人投資是看KD值的，但KD值的看法五花八門，究竟哪一種比較好用？參數這麼多，究竟怎麼調績效比較好？這篇文章示範一個中長期的程式交易策略，並講解製作策略的思路。]]></description>
										<content:encoded><![CDATA[
<p>這篇文章將分享一個程式交易策略，以KD值為主，並且搭配其他的指標。<br>有很多人投資是看KD值的，但KD值的看法五花八門，究竟哪一種比較好用？<br>參數這麼多，究竟怎麼調績效比較好？<br>這篇文章示範一個中長期的程式交易策略，並講解製作策略的思路。</p>



<p>寫策略並模擬回測績效是非常重要的，通過回測，就能一眼看出來你的策略有沒有效。有人說歷史不等於未來，我覺得更正確的說，應該是「歷史不完全等於未來」，每年都有很多不同的黑天鵝，不同的國際政治變化，政黨輪替，然而假如你可以找到一個策略，不論環境如何變化，但是績效一直有穩定的成長，就代表你有可能找到了「歷史與未來會相同的某種選股邏輯」！</p>



<h3 id="KD值">KD值</h3>



<p>今天我們就來試驗一下KD值程式交易選股，<br>首先，我傾向於把指標的參數拉長，原因是這樣比較容易抓的到股價的規律（以日K來說）。<br>不過我個人的研究發現趨勢指標型態不一樣，選出來的股票也會不一樣，<br>絕對不是只要股價會漲就好，而是要符合某些特定的數學條件。</p>



<p>這邊我選擇使用RSV 50, K 20, D 20，當作是參數（台股通常是9、3、3）。<br>當K大於D的時候買入，反之賣出，每天選股並重新平衡資產，可以得到以下的績效：<a href="https://www.finlab.tw/%E7%94%A8KD%E5%80%BC%E9%81%B8%E8%82%A1%EF%BC%9A%E9%82%84%E9%9C%80%E6%90%AD%E9%85%8D%E9%80%99%E4%B8%89%E7%A8%AE%E6%8C%87%E6%A8%99/eq1.png"></a><br><a href="https://www.finlab.tw/%E7%94%A8KD%E5%80%BC%E9%81%B8%E8%82%A1%EF%BC%9A%E9%82%84%E9%9C%80%E6%90%AD%E9%85%8D%E9%80%99%E4%B8%89%E7%A8%AE%E6%8C%87%E6%A8%99/ns1.png"></a></p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="606" height="357" src="http://34.96.136.135/wp-content/uploads/2020/07/eq1-4.png" alt="eq1 4" class="wp-image-759" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/eq1-4.png 606w, https://www.finlab.tw/wp-content/uploads/2020/07/eq1-4-300x177.png 300w" sizes="(max-width: 606px) 100vw, 606px" title="用KD值選股：你還需搭配這三種指標 5"></figure></div>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="625" height="161" src="http://34.96.136.135/wp-content/uploads/2020/07/ns1-1.png" alt="ns1 1" class="wp-image-760" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/ns1-1.png 625w, https://www.finlab.tw/wp-content/uploads/2020/07/ns1-1-300x77.png 300w" sizes="(max-width: 625px) 100vw, 625px" title="用KD值選股：你還需搭配這三種指標 6"></figure></div>



<p>紅色的是有考慮手續費，而藍色的則無。</p>



<p>然而這樣的選法是有一些弊端的！（尤其是手續費很高昂，股票換手率太高）<br>所以接下來我們就想辦法來解決，順便提高一下程式交易的績效～</p>



<h3 id="長期趨勢漲，可能會買在高點！">長期趨勢漲，可能會買在高點！</h3>



<p>當K &gt; D時，股價會衝的很高，但是這時候買入就會買在高點了！<br>所以我們在使用長線KD值時，可以增加一個條件來確保不會買在高點：</p>



<p>當天股價 &lt; 10日平均</p>



<p>除了股價不能太高，同時股價也不能太低！</p>



<h3 id="股價必須高於年線">股價必須高於年線</h3>



<p>我們在此參數下選出來的股票，假如股價沒有過年線的話，很容易漲到年線附近時，就被彈了回去，所以乾脆我們選股的時候，就直接選高於年線的，就不會有這個問題了XD</p>



<h3 id="增加一些常用的財務指標">增加一些常用的財務指標</h3>



<p>程式交易除了用技術指標外，我們也可以增加一些財務指標，例如ROE：<br>ROE近1季大於ROE近4季平均</p>



<p>當然也有很多別的選項，我這邊就選一個好用的入門款XD，</p>



<h3 id="三種條件依序加上後的結果">三種條件依序加上後的結果</h3>



<p>可以發現，從下到上依序就是：</p>



<ol><li>使用KD值</li><li>除了上述以外，額外增加：股價短線別太高</li><li>除了上述以外，額外增加：股價長線別太低</li><li>除了上述以外，額外增加：財務數據</li></ol>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="595" height="357" src="http://34.96.136.135/wp-content/uploads/2020/07/eqall.png" alt="eqall" class="wp-image-761" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/eqall.png 595w, https://www.finlab.tw/wp-content/uploads/2020/07/eqall-300x180.png 300w" sizes="(max-width: 595px) 100vw, 595px" title="用KD值選股：你還需搭配這三種指標 7"></figure></div>



<p><a href="https://www.finlab.tw/%E7%94%A8KD%E5%80%BC%E9%81%B8%E8%82%A1%EF%BC%9A%E9%82%84%E9%9C%80%E6%90%AD%E9%85%8D%E9%80%99%E4%B8%89%E7%A8%AE%E6%8C%87%E6%A8%99/eqall.png"></a>不過以上是沒有增加手續費的，因為我的回測系統每天都會重新權益平衡，所以有非常多不必要的摩擦成本，此時手續費折扣就非常的重要了！</p>



<p>最後我新增了一些不太重要的條件（為了減少股票檔數），整理成下圖，紅色為有手續費，藍色沒有手續費，只能說以人工調配持股應該會有更好的成果～有興趣可以研究看看！<a href="https://www.finlab.tw/%E7%94%A8KD%E5%80%BC%E9%81%B8%E8%82%A1%EF%BC%9A%E9%82%84%E9%9C%80%E6%90%AD%E9%85%8D%E9%80%99%E4%B8%89%E7%A8%AE%E6%8C%87%E6%A8%99/eqf.png"></a><br><a href="https://www.finlab.tw/%E7%94%A8KD%E5%80%BC%E9%81%B8%E8%82%A1%EF%BC%9A%E9%82%84%E9%9C%80%E6%90%AD%E9%85%8D%E9%80%99%E4%B8%89%E7%A8%AE%E6%8C%87%E6%A8%99/nsf.png"></a></p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="612" height="357" src="http://34.96.136.135/wp-content/uploads/2020/07/eqf.png" alt="eqf" class="wp-image-762" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/eqf.png 612w, https://www.finlab.tw/wp-content/uploads/2020/07/eqf-300x175.png 300w" sizes="(max-width: 612px) 100vw, 612px" title="用KD值選股：你還需搭配這三種指標 8"></figure></div>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="612" height="161" src="http://34.96.136.135/wp-content/uploads/2020/07/nsf.png" alt="nsf" class="wp-image-763" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/nsf.png 612w, https://www.finlab.tw/wp-content/uploads/2020/07/nsf-300x79.png 300w" sizes="(max-width: 612px) 100vw, 612px" title="用KD值選股：你還需搭配這三種指標 9"></figure></div>
]]></content:encoded>
					
					<wfw:commentRss>https://www.finlab.tw/%e7%94%a8kd%e5%80%bc%e9%81%b8%e8%82%a1%ef%bc%9a%e9%82%84%e9%9c%80%e6%90%ad%e9%85%8d%e9%80%99%e4%b8%89%e7%a8%ae%e6%8c%87%e6%a8%99/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">758</post-id>	</item>
		<item>
		<title>「外資買入成本指標」選股 &#8211; Python教學看這裡</title>
		<link>https://www.finlab.tw/python%ef%bc%9a%e8%a8%88%e7%ae%97%e5%a4%96%e8%b3%87%e8%b2%b7%e5%85%a5%e6%88%90%e6%9c%ac/</link>
					<comments>https://www.finlab.tw/python%ef%bc%9a%e8%a8%88%e7%ae%97%e5%a4%96%e8%b3%87%e8%b2%b7%e5%85%a5%e6%88%90%e6%9c%ac/#respond</comments>
		
		<dc:creator><![CDATA[FinLab - 韓承佑]]></dc:creator>
		<pubDate>Wed, 22 Jul 2020 07:05:22 +0000</pubDate>
				<category><![CDATA[財經PYTHON教學]]></category>
		<category><![CDATA[外資]]></category>
		<category><![CDATA[技術指標]]></category>
		<guid isPermaLink="false">http://34.96.136.135/?p=719</guid>

					<description><![CDATA[上次已經介紹了如何爬取外資爬蟲～這次我們就用三大法人來製作指標！
自己做指標的好處是，數字都可以客製化，也可以搭配其它不同的指標進行選股和回測喔！
這次我們要做的指標是「外資買入成本」！]]></description>
										<content:encoded><![CDATA[
<p>上次已經介紹了如何爬取外資爬蟲～這次我們就用三大法人來製作指標！<br>自己做指標的好處是，數字都可以客製化，也可以搭配其它不同的指標進行選股和回測喔！<br>這次我們要做的指標是「外資買入成本」！<a href="https://www.finlab.tw/python%EF%BC%9A%E8%A8%88%E7%AE%97%E5%A4%96%E8%B3%87%E8%B2%B7%E5%85%A5%E6%88%90%E6%9C%AC/Picture1.png"></a></p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="1024" height="766" src="http://34.96.136.135/wp-content/uploads/2020/07/Picture1-1-1024x766.png" alt="Picture1 1" class="wp-image-720" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/Picture1-1-1024x766.png 1024w, https://www.finlab.tw/wp-content/uploads/2020/07/Picture1-1-300x224.png 300w, https://www.finlab.tw/wp-content/uploads/2020/07/Picture1-1-768x574.png 768w, https://www.finlab.tw/wp-content/uploads/2020/07/Picture1-1.png 1500w" sizes="(max-width: 1024px) 100vw, 1024px" title="「外資買入成本指標」選股 - Python教學看這裡 10"></figure></div>



<h3 id="計算指標前，先整理好財務數據">計算指標前，先整理好財務數據</h3>



<p>(沒上課程的請看這邊，上了課的可以跳過看下一段)</p>



<p>在計算外資買入成本前，我們必須要或得兩個 DataFrame：</p>



<ol><li>「收盤價」</li><li>「外資買入張數」</li></ol>



<p>這兩個&nbsp;<code>DataFrame</code>，其&nbsp;<code>columns</code>&nbsp;是股票的代號，而&nbsp;<code>index</code>是每天的日期，<br>這兩個&nbsp;<code>DataFrame</code>&nbsp;要怎麼做出來呢？</p>



<p>首先，可以參考之前的文章，學習爬取股價跟三大法人：</p>



<ol><li><a href="https://www.finlab.tw/%E8%B6%85%E7%B0%A1%E5%96%AE%E5%8F%B0%E8%82%A1%E6%AF%8F%E6%97%A5%E7%88%AC%E8%9F%B2%E6%95%99%E5%AD%B8/">爬取股價資訊</a></li><li><a href="https://www.finlab.tw/%E4%B8%89%E5%A4%A7%E6%B3%95%E4%BA%BA%E7%88%AC%E8%9F%B2/">爬取三大法人買賣超</a></li></ol>



<p>接下來，我們可以將這先每天都有的資料轉換成時間序列的 DataFrame：<br><a href="https://www.finlab.tw/Python-%E6%99%82%E9%96%93%E5%BA%8F%E5%88%97%E5%AF%A6%E4%BD%9C%EF%BC%81/">時間序列實做</a><br>以上這篇文章只有教您怎麼整理「收盤價」，沒有教您怎麼整理「三大法人買賣資訊喔！」<br>但原理都是一樣的，所以就依法炮製可以做出「三大法人」的<code>DataFrame</code>喔！</p>



<h3 id="好麻煩喔！有沒有更快的方式？-利用課堂的工具">好麻煩喔！有沒有更快的方式？(利用課堂的工具)</h3>



<p>假如您有上<a href="https://hahow.in/cr/python-finance" rel="noreferrer noopener" target="_blank">課程</a>的話，利用&nbsp;<a href="https://www.finlab.tw/%E4%B8%89%E5%A4%A7%E6%B3%95%E4%BA%BA%E7%88%AC%E8%9F%B2/">爬取三大法人買賣超</a>&nbsp;這篇文章，<br>就可以將三大法人買賣超的資訊整理好喔！</p>



<p>所以您用我們課程中的code，只需要額外增加：</p>



<pre class="wp-block-code"><code lang="python" class="language-python line-numbers">from finlab.data import Data
data = Data()</code></pre>



<p>以上的code就是一個可以跟資料庫索取資料的物件，接下來只要把資料讀進來就可以了：</p>



<pre class="wp-block-code"><code lang="python" class="language-python line-numbers"># 外資買入（2017-12月後的格式）
陸資買進 = data.get('外陸資買進股數(不含外資自營商)', 250)
外資買進 = data.get('外資自營商買進股數', 250)

外資買進 += 陸資買進

# 外資買入（2017~12月前的格式）
外資買進.fillna(data.get('外資買進股數', 250))</code></pre>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="1010" height="505" src="http://34.96.136.135/wp-content/uploads/2020/07/buy.png" alt="buy" class="wp-image-721" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/buy.png 1010w, https://www.finlab.tw/wp-content/uploads/2020/07/buy-300x150.png 300w, https://www.finlab.tw/wp-content/uploads/2020/07/buy-768x384.png 768w" sizes="(max-width: 1010px) 100vw, 1010px" title="「外資買入成本指標」選股 - Python教學看這裡 11"></figure></div>



<p><a href="https://www.finlab.tw/python%EF%BC%9A%E8%A8%88%E7%AE%97%E5%A4%96%E8%B3%87%E8%B2%B7%E5%85%A5%E6%88%90%E6%9C%AC/buy.png"></a>這樣就可以，直接得到dataframe囉！<br>賣出也是依法炮製：</p>



<pre class="wp-block-code"><code lang="python" class="language-python line-numbers"># 外資賣出（2017-12月後的格式）
陸資賣出 = data.get('外陸資賣出股數(不含外資自營商)', 250)
外資賣出 = data.get('外資自營商賣出股數', 250)

外資賣出 += 陸資賣出

# 外資賣出（2017~12月前的格式）
外資賣出.fillna(data.get('外資賣出股數', 250))</code></pre>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="1008" height="445" src="http://34.96.136.135/wp-content/uploads/2020/07/sell.png" alt="sell" class="wp-image-722" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/sell.png 1008w, https://www.finlab.tw/wp-content/uploads/2020/07/sell-300x132.png 300w, https://www.finlab.tw/wp-content/uploads/2020/07/sell-768x339.png 768w" sizes="(max-width: 1008px) 100vw, 1008px" title="「外資買入成本指標」選股 - Python教學看這裡 12"></figure></div>



<p><a href="https://www.finlab.tw/python%EF%BC%9A%E8%A8%88%E7%AE%97%E5%A4%96%E8%B3%87%E8%B2%B7%E5%85%A5%E6%88%90%E6%9C%AC/sell.png"></a>然後是收盤價：</p>



<pre class="wp-block-code"><code lang="python" class="language-python line-numbers"># 收盤價
收盤價 = data.get('收盤價', 250)</code></pre>



<h3 id="接下來我們就可以來計算指標了，首先：外資買入成本">接下來我們就可以來計算指標了，首先：外資買入成本</h3>



<p>其實這一步驟是最簡單的XD<br>最重要的只有兩個&nbsp;<code>function</code>&nbsp;：</p>



<ol><li>DataFrame 乘法：DataFrame的乘法很聰明，會將一樣的column name 跟 index 對應到的數字相乘，所以我們可以直接寫&nbsp;<code>外資買入 * 收盤價</code>&nbsp;這樣子的語法</li><li>df.rolling(60).mean()：就是時間窗格，例如今天的值，會變成過去60天的值的加總，每一天都如此計算。</li></ol>



<p>所以就有以下的code：</p>



<pre class="wp-block-code"><code lang="python" class="language-python line-numbers">外資買進成本 = (外資買進 * 收盤價).rolling(60, min_periods=1).sum() / 外資買進.rolling(60, min_periods=1).sum()</code></pre>



<p>就這樣算完了，但是有時候我們防止&nbsp;<code>DataFrame</code>&nbsp;裡面有&nbsp;<code>NaN</code>&nbsp;，我們希望就算有&nbsp;<code>NaN</code>&nbsp;也能算出值，就可以寫成：</p>



<pre class="wp-block-code"><code lang="python" class="language-python line-numbers">外資買進成本 = (外資買進 * 收盤價).rolling(60, min_periods=1).sum() / 外資買進.rolling(60, min_periods=1).sum()</code></pre>



<p>當中的&nbsp;<code>min_period=1</code>&nbsp;代表60天中，只需要有一天不是&nbsp;<code>NaN</code>，就可以將不是&nbsp;<code>NaN</code>&nbsp;的數字取平均喔！<br>所以這樣寫會是比較建議的。</p>



<p>這邊要注意的是，我們不只算了單一一檔股票，是把所有股票的外資買進成本都算出來囉！</p>



<h3 id="外資賣出成本">外資賣出成本</h3>



<p>這邊一模一樣，所以就直接放code：</p>



<pre class="wp-block-code"><code lang="python" class="language-python line-numbers">外資賣出成本 = (外資賣出 * 收盤價).rolling(60, min_periods=1).sum() / 外資賣出.rolling(60, min_periods=1).sum()</code></pre>



<h3 id="畫出曲線">畫出曲線</h3>



<p>我們可以將 買入、賣出 的成本都畫出來：</p>



<pre class="wp-block-code"><code lang="python" class="language-python line-numbers">收盤價['1101'].plot()
外資買進成本['1101'].plot(color='red')
外資賣出成本['1101'].plot(color='blue')</code></pre>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="707" height="446" src="http://34.96.136.135/wp-content/uploads/2020/07/eq-13.png" alt="eq 13" class="wp-image-723" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/eq-13.png 707w, https://www.finlab.tw/wp-content/uploads/2020/07/eq-13-300x189.png 300w" sizes="(max-width: 707px) 100vw, 707px" title="「外資買入成本指標」選股 - Python教學看這裡 13"></figure></div>



<p><a href="https://www.finlab.tw/python%EF%BC%9A%E8%A8%88%E7%AE%97%E5%A4%96%E8%B3%87%E8%B2%B7%E5%85%A5%E6%88%90%E6%9C%AC/eq.png"></a>紅色的線就是外資的買進成本<br>藍色的就是賣出成本</p>



<p>當買進成本高於賣出成本時，就是可以考慮買進的時機喔！<br>或是當股價上漲後，拉回到買進成本線，也是很好的買點喔！<br>大家可以試著回測看看～～</p>



<h3 id="選股">選股</h3>



<p>我們也可以選擇股價小於外資成本的股票清單：</p>



<pre class="wp-block-code"><code lang="python" class="language-python line-numbers">cond1 = 收盤價.iloc[-1] &lt; 外資買進成本.iloc[-1]
print(cond1[cond1])</code></pre>



<p>這樣就可以看到所有股價小於外資成本的股票囉！<br>方便您繼續追蹤，看這些股票有沒有突破外資成本，一飛沖天喔！</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.finlab.tw/python%ef%bc%9a%e8%a8%88%e7%ae%97%e5%a4%96%e8%b3%87%e8%b2%b7%e5%85%a5%e6%88%90%e6%9c%ac/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">719</post-id>	</item>
		<item>
		<title>簡單又有效：股價加速度選股指標</title>
		<link>https://www.finlab.tw/%e7%b0%a1%e6%98%93%e7%9a%84%e5%a4%96%e8%b3%87-%e5%9f%ba%e6%9c%ac%e9%9d%a2%e7%ad%96%e7%95%a5/</link>
					<comments>https://www.finlab.tw/%e7%b0%a1%e6%98%93%e7%9a%84%e5%a4%96%e8%b3%87-%e5%9f%ba%e6%9c%ac%e9%9d%a2%e7%ad%96%e7%95%a5/#respond</comments>
		
		<dc:creator><![CDATA[FinLab - 韓承佑]]></dc:creator>
		<pubDate>Wed, 22 Jul 2020 07:05:22 +0000</pubDate>
				<category><![CDATA[技術面]]></category>
		<category><![CDATA[外資]]></category>
		<category><![CDATA[技術指標]]></category>
		<category><![CDATA[指標]]></category>
		<category><![CDATA[財經PYTHON教學]]></category>
		<guid isPermaLink="false">http://34.96.136.135/?p=725</guid>

					<description><![CDATA[本文分享了製作策略的過程，還有一個獨家的指標，組合成有效且強力的選股邏輯，原本是要作三大法人策略，但陰錯陽差而寫成了另外一個程式交易略，分享給大家，這個指標只用到了國小數學，但是個人覺得還滿有效的！]]></description>
										<content:encoded><![CDATA[
<p>本文分享了製作策略的過程，還有一個獨家的指標，組合成有效且強力的選股邏輯，<br>原本是要作三大法人策略，但陰錯陽差而寫成了另外一個程式交易策略，分享給大家，<br>這個指標只用到了國小數學，但是個人覺得還滿有效的！</p>



<h3 id="究竟是如何完成一個策略的？">究竟是如何完成一個策略的？</h3>



<p>建構一個好的指標並不容易，大約是以下幾個步驟：</p>



<ol><li>有一個初始的想法（某天，我想製作一個三大法人指標）</li><li>回測看看（怎麼測怎麼悲劇）</li><li>檢查買賣訊號，修改一下，並回到步驟2（以為想到好方法，但空歡喜一場）</li><li>終於跳出2-&gt;3-&gt;2-&gt;3的循環，成功做出策略（發現根本不是三大法人策略XD）</li></ol>



<p>通常我們就會在步驟2跟3不斷循環，直到成功為止，<br>假如你試了一百萬次，總能夠找到一個好策略，<br>但就是會花很久的時間就是了…</p>



<h3 id="如何快速建構出一個好策略？">如何快速建構出一個好策略？</h3>



<p>個人根據經驗，歸納了一些簡單小技巧，幫助你更快速的找到好策略：</p>



<ol><li>單看某些條件直接回測，看該因子會不會反映於股價（通常好壞會差滿多的）</li><li>知道該因子的數值分佈狀況（例如：ROE要多高才算高？），才能輕鬆產生嚴苛或寬鬆的條件</li><li>將有用的條件組合，並適當的調整條件的鬆緊（由寬鬆往嚴苛的方向，調整試試看）</li></ol>



<p>以上是我自己回測時常用到的方法，<br>另外，回測系統也是滿重要的，可以快速驗證、組合各種不同的條件，<br>回測系統有可以講很多東西，先別離提好了，回到今天的策略</p>



<h3 id="這是個誤打誤撞的策略">這是個誤打誤撞的策略</h3>



<p>其實我原本是想研究三大法人的策略，<br>但發現三大法人除了投信外，怎麼寫都寫不出來XD<br>最後，反而研究出了一個簡單好用的指標！<br>反倒是外資在這個策略中，比較算是輔助條件，不是最重要的條件<br>以下就是這個指標的介紹</p>



<h3 id="漲跌加減速指標">漲跌加減速指標</h3>



<p>我們可以把股價想像成汽車前進後退，這樣的話，價格的漲跌就對應到車子移動，<br>國中我們都學過</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="248" height="76" src="http://34.96.136.135/wp-content/uploads/2020/07/Screenshot-2020-07-14-at-11.00.31.png" alt="Screenshot 2020 07 14 at 11.00.31" class="wp-image-726" title="簡單又有效：股價加速度選股指標 14"></figure></div>



<p>其中 <em><em>x<sub>0</sub></em></em> 是買入股價，而 <em>x<sub>t</sub></em>​​ 是賣出的股價<br>我們想要&nbsp;<em>x<sub>t</sub></em>​​ ​​&gt;<em> <em><em>x<sub>0</sub></em></em></em>​​，代表有獲利<br>那就等同於代表我們希望&nbsp;<em>v</em> &gt; 0 且 <em>a</em> &gt; 0<br>代表股價有機會越來越高，也就比較可能會獲利！<br>其中，<em>v</em> &gt; 0&nbsp;比較簡單，就是今天股價比n天前高就行了<br>但是 <em>a</em> &gt; 0 要怎麼表示呢？就是我們接下來要探討的了</p>



<p>下圖中，藍色的曲線為均線，而紅色線與黃色的點為指標<br>當今天黃點在紅線下方時，代表目前股價的加速度（曲率）大於零，所以股價之後上漲的機率高（買點）<br>當今天黃點在紅線上方時，代表目前股價的加速度（曲率）小於零，所以股價之後下跌的機率高（賣點）<a href="https://www.finlab.tw/%E7%B0%A1%E6%98%93%E7%9A%84%E5%A4%96%E8%B3%87-%E5%9F%BA%E6%9C%AC%E9%9D%A2%E7%AD%96%E7%95%A5/indicator.png"></a></p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="1024" height="552" src="http://34.96.136.135/wp-content/uploads/2020/07/indicator-1024x552.png" alt="indicator" class="wp-image-727" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/indicator-1024x552.png 1024w, https://www.finlab.tw/wp-content/uploads/2020/07/indicator-300x162.png 300w, https://www.finlab.tw/wp-content/uploads/2020/07/indicator-768x414.png 768w, https://www.finlab.tw/wp-content/uploads/2020/07/indicator.png 1070w" sizes="(max-width: 1024px) 100vw, 1024px" title="簡單又有效：股價加速度選股指標 15"></figure></div>



<p>有了這個邏輯，接下來，我們可以寫出數學公式</p>



<h3 id="如何寫成條件式？">如何寫成條件式？</h3>



<p>寫成數學公式也很簡單，我們只要判斷圖中的紫色點跟黃色點，哪個比較高就可以了，</p>



<ul><li>紫色點的價格：（今天均線價格 + 2n天前均線價格）/2</li><li>黃色點的價格：第n天前的均線價格</li></ul>



<p>所以總結我們的加速度指標就是：</p>



<p>加速指標 = (紫色點價格 ─ 黃色點價格) / 黃色點價格</p>



<p>當此指標為正的時候，代表加速度越大（越容易漲）<br>此指標為負的時候，代表加速度越小（越容易跌）</p>



<h3 id="簡單，但是有效果！">簡單，但是有效果！</h3>



<p>我也是走實用路線的，其實交易策略的論文有很多，選股方法也有很多種<br>我喜歡的策略可以這樣排序：</p>



<ol><li>簡單又有效的方法</li><li>簡單但無效的方法</li><li>困難但有效的方法</li><li>困難又無效的方法</li></ol>



<p>我比較推崇簡單的方法，因為實做困難的策略，要耗費大量的時間，但最後不一定有效，<br>相反的，做一個簡單的策略，只需要花一點點時間，但成功後，效果往往不差，失敗了也沒關係，<br>至少是快速失敗，總比花了大量的人力精力，最後發現無用來的好。</p>



<h3 id="先來看一下回測的結果">先來看一下回測的結果</h3>



<p>以加速度指標為主體，搭配一些其它條件，我們可以歷史權益曲線報酬率為下圖，大約有十年十倍，<br>紅色的曲線考慮手續費，而藍色不考慮手續費，<br>可以發現有沒有手續費還是差滿多的！尤其是這種每天都要買賣的策略，<a href="https://www.finlab.tw/%E7%B0%A1%E6%98%93%E7%9A%84%E5%A4%96%E8%B3%87-%E5%9F%BA%E6%9C%AC%E9%9D%A2%E7%AD%96%E7%95%A5/eq.png"></a></p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" width="622" height="340" src="http://34.96.136.135/wp-content/uploads/2020/07/eq-1-3.png" alt="eq 1 3" class="wp-image-728" srcset="https://www.finlab.tw/wp-content/uploads/2020/07/eq-1-3.png 622w, https://www.finlab.tw/wp-content/uploads/2020/07/eq-1-3-300x164.png 300w" sizes="(max-width: 622px) 100vw, 622px" title="簡單又有效：股價加速度選股指標 16"></figure></div>



<p><a href="https://www.finlab.tw/%E5%8A%A0%E9%80%9F%E5%BA%A6%E6%8C%87%E6%A8%99-%E5%8A%A0%E9%80%9F%E4%BD%A0%E7%9A%84%E7%8D%B2%E5%88%A9/">下一篇</a>，我就會介紹該策略的詳細條件，讓大家來品香一下～趕快來看看吧！</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.finlab.tw/%e7%b0%a1%e6%98%93%e7%9a%84%e5%a4%96%e8%b3%87-%e5%9f%ba%e6%9c%ac%e9%9d%a2%e7%ad%96%e7%95%a5/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">725</post-id>	</item>
	</channel>
</rss>
