<?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>R - FP嶋の資産形成学</title>
	<atom:link href="https://fp-shima.ne.jp/category/asset-management/kyouiku-kosodate/programming/r/feed/" rel="self" type="application/rss+xml" />
	<link>https://fp-shima.ne.jp</link>
	<description>本当の資産を形成するためにFP嶋に資産形成学を学びましょう</description>
	<lastBuildDate>Fri, 29 Sep 2023 03:52:32 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.4</generator>
<atom:link rel="hub" href="https://pubsubhubbub.appspot.com"/>
<atom:link rel="hub" href="https://pubsubhubbub.superfeedr.com"/>
<atom:link rel="hub" href="https://websubhub.com/hub"/>
<atom:link rel="self" href="https://fp-shima.ne.jp/category/asset-management/kyouiku-kosodate/programming/r/feed/"/>
	<item>
		<title>サイトヘルスを向上させる。</title>
		<link>https://fp-shima.ne.jp/2023/09/29/wordpress_error/</link>
					<comments>https://fp-shima.ne.jp/2023/09/29/wordpress_error/#respond</comments>
		
		<dc:creator><![CDATA[FPshima]]></dc:creator>
		<pubDate>Fri, 29 Sep 2023 14:16:00 +0000</pubDate>
				<category><![CDATA[pineスクリプト]]></category>
		<category><![CDATA[R]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[教育・子育て・スキルアップ]]></category>
		<category><![CDATA[ワードプレス]]></category>
		<guid isPermaLink="false">https://fp-shima.ne.jp/?p=3406</guid>

					<description><![CDATA[今回は、当サイトを編集する際に、ヘルスステータスが悪化してますよって通知出たので、その時の対応の話 永続オブジェクトキャッシュを使用してください なんのこっちゃ・・・って思いますが、要はサーバーからサイト情報を素早く読み込めるようにしてくれ…]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">今回は、当サイトを編集する際に、ヘルスステータスが悪化してますよって通知出たので、その時の対応の話</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" rel="nofollow">
<img decoding="async" border="0" width="468" height="60" alt="" src="https://www27.a8.net/svt/bgt?aid=230128434770&wid=004&eno=01&mid=s00000022371001004000&mc=1"></a>
<img decoding="async" border="0" width="1" height="1" src="https://www17.a8.net/0.gif?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" alt="">



<h2 class="wp-block-heading"><strong>永続オブジェクトキャッシュを使用してください</strong></h2>



<p class="wp-block-paragraph">なんのこっちゃ・・・って思いますが、要はサーバーからサイト情報を素早く読み込めるようにしてくれってこと。その為の改善方法にはプラグインを入れたり、テーマをいじったり…様々あるようですが、今回は使用しているdiverというテーマの「子テーマ」をいじる方法で解決しました。</p>



<p class="wp-block-paragraph">解決しました。とは書いていますが、実際は表示されなくなるだけで、永続オブジェクトキャッシュ設定したわけではありません…</p>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="797" height="612" src="https://fp-shima.ne.jp/wp-content/uploads/2023/09/eizoku.png" alt="" class="wp-image-3407" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/09/eizoku.png 797w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/eizoku-300x230.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/eizoku-150x115.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/eizoku-768x590.png 768w" sizes="(max-width: 797px) 100vw, 797px" /></figure>



<p class="wp-block-paragraph">上記はワードプレスのヘルプにあった説明。</p>



<h4 class="wp-block-heading">子テーマ</h4>



<p class="wp-block-paragraph">人によってはテーマを買っていると思います。私は「Diver」というテーマを利用しています。</p>



<p class="wp-block-paragraph">テーマには元となるデータの親テーマと、こちらで色々といじっても良いように、子テーマがあります。</p>



<p class="wp-block-paragraph">いじるときは必ず子テーマをいじりましょう。</p>



<h3 class="wp-block-heading">実際の作業</h3>



<p class="wp-block-paragraph">以下のように操作しました</p>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="498" src="https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma-1024x498.png" alt="" class="wp-image-3409" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma-1024x498.png 1024w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma-300x146.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma-150x73.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma-768x374.png 768w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma-1536x747.png 1536w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma.png 1663w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">外観　→　テーマファイルエディタ　を選択します</p>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="490" src="https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma2-1024x490.png" alt="" class="wp-image-3410" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma2-1024x490.png 1024w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma2-300x143.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma2-150x72.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma2-768x367.png 768w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma2-1536x734.png 1536w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/kote-ma2.png 1667w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">出てきたページで矢印のところを操作</p>



<div class="wp-block-dvaux-frame sc_frame_wrap inline"><div class="sc_frame_title inline" style="background-color:#70b8f1">作業内容</div><div class="sc_frame" style="background-color:#fff;border-color:#70b8f1">
<ol class="wp-block-list">
<li><strong>編集するテーマを選択　子テーマ　_child　</strong></li>



<li><strong>テーマファンクションを選ぶ</strong></li>



<li><strong>枠下の呪文を唱える</strong></li>



<li><strong>ファイルを更新する</strong></li>
</ol>
</div></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-php" data-lang="PHP"><code>add_filter(&#39;site_status_should_suggest_persistent_object_cache&#39;,&#39;__return_false&#39;);</code></pre></div>



<p class="wp-block-paragraph">フィルターを加えるのですが、結論としては、解決していないですね。表示されないようにしただけです。</p>



<p class="wp-block-paragraph">レンタルサーバー側で何らかの対応がきっとされる…と信じてます。</p>



<p class="wp-block-paragraph">有効な方法は…今後に期待…</p>



<h3 class="wp-block-heading">ページキャッシュが検出されず、サーバのレスポンスが遅くなっています。</h3>



<p class="wp-block-paragraph">こちらはプラグインで対応しました。</p>



<p class="wp-block-paragraph">プラグインで使ったのは「<strong>WP Fastest Cache</strong>」</p>



<p class="wp-block-paragraph">以下のように設定します。</p>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="800" height="777" src="https://fp-shima.ne.jp/wp-content/uploads/2023/09/fastestcache.png" alt="" class="wp-image-3412" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/09/fastestcache.png 800w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/fastestcache-300x291.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/fastestcache-150x146.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/09/fastestcache-768x746.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></figure>



<p class="wp-block-paragraph">上記設定にしてSubmitすればOK</p>



<p class="wp-block-paragraph">こちらはちゃんと対応できているはず。</p>



<p class="wp-block-paragraph">ヘルスステータスで警告が出なければ、対応終了です。</p>



<p class="wp-block-paragraph">また、何かあれば更新いたします。</p>



<h2 class="wp-block-heading">おすすめFXアイテム</h2>



<p class="wp-block-paragraph">過去検証や分析はMT4かFT4、Trading viewがおすすめです。</p>



<p class="wp-block-paragraph">無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF</p>



<p class="wp-block-paragraph">ガチで過去検証をやりたい人はFT4、<a href="https://h.accesstrade.net/sp/cc?rk=0100kxwf00j59w"></a></p>



<p class="wp-block-paragraph">チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www28.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""> <a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913&amp;guid=ON"><img loading="lazy" decoding="async" width="300" height="250" style="border:none;" src="//image.moshimo.com/af-img/1739/000000030913.jpg"></a><img loading="lazy" decoding="async" width="1" height="1" style="border:none;" src="//i.moshimo.com/af/i/impression?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913"> <a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">
]]></content:encoded>
					
					<wfw:commentRss>https://fp-shima.ne.jp/2023/09/29/wordpress_error/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Rといえば、apply系関数！表計算的な事が簡単に出来ますよ！</title>
		<link>https://fp-shima.ne.jp/2023/08/27/r007/</link>
					<comments>https://fp-shima.ne.jp/2023/08/27/r007/#respond</comments>
		
		<dc:creator><![CDATA[FPshima]]></dc:creator>
		<pubDate>Sat, 26 Aug 2023 15:09:59 +0000</pubDate>
				<category><![CDATA[pineスクリプト]]></category>
		<category><![CDATA[R]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[教育・子育て・スキルアップ]]></category>
		<guid isPermaLink="false">https://fp-shima.ne.jp/?p=3365</guid>

					<description><![CDATA[今回は、R上のデータを計算する方法のうち、apply系と呼ばれる表計算が出来るものを紹介します。 apply系の種類 apply 行列・データフレームに対し、各行、各列で演算 tapply データフレームの指定した値でグループ化して演算 l…]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">今回は、R上のデータを計算する方法のうち、apply系と呼ばれる表計算が出来るものを紹介します。</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="468" height="60" alt="" src="https://www27.a8.net/svt/bgt?aid=230128434770&wid=004&eno=01&mid=s00000022371001004000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www17.a8.net/0.gif?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" alt="">



<h2 class="wp-block-heading">apply系の種類</h2>



<figure class="wp-block-table"><table><tbody><tr><td>apply</td><td>行列・データフレームに対し、各行、各列で演算</td></tr><tr><td>tapply</td><td>データフレームの指定した値でグループ化して演算</td></tr><tr><td>lapply</td><td>リストに対して演算。結果もリスト</td></tr><tr><td>sapply</td><td>リストに対して演算。結果がベクトル</td></tr><tr><td>mapply</td><td>複数リストまたはベクトルに対して関数を適用</td></tr><tr><td></td><td></td></tr><tr><td></td><td></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">例を見ていきましょう。xdataは以前に作ったデータです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>a&lt;-apply(xdata,1,mean)　#　引数の2番目に1とすると行に対して演算
&gt; head(a)　#　head()は先頭の6個のデータを呼び出せる。データが大きい時に便利。（,x）で数値指定すれば表示数を変更可能
2023-07-24 06:03:00 2023-07-24 06:05:00 2023-07-24 06:06:00 2023-07-24 06:09:00 
           141.7675            141.6825            141.6868            141.6965 
2023-07-24 06:10:00 2023-07-24 06:11:00 
           141.6975            141.6962 

b &lt;- apply(xdata,2,var)　#　2を設定すると列に対して演算　この場合分散を求めている。
&gt; b
    open     high      low    close 
2.510861 2.497637 2.524620 2.511231 

c &lt;- c(1,2,3,4,5,2,3,4,5,6,7,8,9,1,2)　#　長さ15の数値
d &lt;- rep(c(&quot;a&quot;,&quot;b&quot;,&quot;c&quot;),5)　#　長さ15にするために、rep()でa,b,cの3つのグループを5回繰り返す
tapply(c, d, mean)　#　ｃの並びをdグループに分けて、それぞれの平均を求める。
  a   b   c 
4.6 3.8 4.0 
#　今回はベクトル同士でやっていますが、データフレームなどでも長さが一緒であれば抜き出してまとめられます

a &lt;- c(1,2,3)
b &lt;- c(2,3,4)
c &lt;- c(3,4,5)
tlist &lt;- list(a,b,c) # リストを作りました
&gt; lapply(tlist,mean)　#　リストの平均値を求めて　リストで結果が戻る
[[1]]
[1] 2

[[2]]
[1] 3

[[3]]
[1] 4
&gt; sapply(tlist,mean)　#　リストの平均値を求めて　ベクトルで結果が戻る
[1] 2 3 4

#mapply用に関数を作る
#　function(引数,・・・)｛計算内容｝で自作関数を作ることが出来る

my_func &lt;- function(x,y){　#　自作関数の引数の書き方を決定
+   z &lt;- x-y　　　　　　　　#引数を用いた計算内容を定義
+   return(z)　　　　　　　#　計算結果を表示
+ }　　
&gt; my_func(1,2)　#　今回はmy_func(x,y)という関数に、引数2つで差を取る関数を作った
[1] -1

result &lt;- mapply(my_func,xdata$high,xdata$low)　#　自作関数をxdataのhighとlowを引数として適用
&gt; head(result,10)　#　10個目までのデータを確認
 high  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt; 
0.165 0.005 0.020 0.021 0.023 0.005 0.005 0.002 0.053 0.014 
&gt; head(xdata$high-xdata$low,10)　#　直接計算させたものを見てみる
                     high
2023-07-24 06:03:00 0.165
2023-07-24 06:05:00 0.005
2023-07-24 06:06:00 0.020
2023-07-24 06:09:00 0.021
2023-07-24 06:10:00 0.023
2023-07-24 06:11:00 0.005
2023-07-24 06:12:00 0.005
2023-07-24 06:13:00 0.002
2023-07-24 06:14:00 0.053
2023-07-24 06:15:00 0.014　#　計算結果は一致！

result &lt;- mapply(my_func,xdata[,2],xdata[,3])　#　こういう書き方でもOK!
&gt; head(result,10)
 high  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt;  &lt;NA&gt; 
0.165 0.005 0.020 0.021 0.023 0.005 0.005 0.002 0.053 0.014 </code></pre></div>



<p class="wp-block-paragraph">色々な計算が出来ます。平均(mean)、合計(sum)、分散(var)、最大値(max)、最小値(min)、標準偏差(sd)、要約(summary)、テーブル(table)等です。</p>



<p class="wp-block-paragraph">基本的にはfor文で行や列ごとに計算~ってするより早いと言われています。　後は単純にfor文よりコードが短くなります。</p>



<p class="wp-block-paragraph">今回はこの辺で</p>



<h2 class="wp-block-heading">おすすめFXアイテム</h2>



<p class="wp-block-paragraph">過去検証や分析はMT4かFT4、Trading viewがおすすめです。</p>



<p class="wp-block-paragraph">無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF</p>



<p class="wp-block-paragraph">ガチで過去検証をやりたい人はFT4、<a href="https://h.accesstrade.net/sp/cc?rk=0100kxwf00j59w"></a></p>



<p class="wp-block-paragraph">チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www28.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""> <a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913&amp;guid=ON"><img loading="lazy" decoding="async" width="300" height="250" style="border:none;" src="//image.moshimo.com/af-img/1739/000000030913.jpg"></a><img loading="lazy" decoding="async" width="1" height="1" style="border:none;" src="//i.moshimo.com/af/i/impression?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913"> <a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">
]]></content:encoded>
					
					<wfw:commentRss>https://fp-shima.ne.jp/2023/08/27/r007/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Rのベクトルと行列、演算について(2)</title>
		<link>https://fp-shima.ne.jp/2023/08/23/r006-2/</link>
					<comments>https://fp-shima.ne.jp/2023/08/23/r006-2/#respond</comments>
		
		<dc:creator><![CDATA[FPshima]]></dc:creator>
		<pubDate>Wed, 23 Aug 2023 05:57:26 +0000</pubDate>
				<category><![CDATA[pineスクリプト]]></category>
		<category><![CDATA[R]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[教育・子育て・スキルアップ]]></category>
		<guid isPermaLink="false">https://fp-shima.ne.jp/?p=3347</guid>

					<description><![CDATA[前回の続きです。行列の演算を見ていきましょう 行列を準備する 行列は特殊なものが多くあって、色々と面倒です。個別の話はしませんが、のちのことを考えて、対角成分が連番になるような行列を作ります。　ちなみにdiag()はn行n列の単位行列を、作…]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">前回の続きです。行列の演算を見ていきましょう</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="468" height="60" alt="" src="https://www27.a8.net/svt/bgt?aid=230128434770&wid=004&eno=01&mid=s00000022371001004000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www17.a8.net/0.gif?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" alt="">



<h2 class="wp-block-heading">行列を準備する</h2>



<p class="wp-block-paragraph">行列は特殊なものが多くあって、色々と面倒です。個別の話はしませんが、のちのことを考えて、対角成分が連番になるような行列を作ります。　ちなみにdiag()はn行n列の単位行列を、作ります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>diag(4)　　　　　　　　　　#　4行4列の単位行列　(大きさが1)
     [,1] [,2] [,3] [,4]
[1,]    1    0    0    0
[2,]    0    1    0    0
[3,]    0    0    1    0
[4,]    0    0    0    1

a &lt;- diag(1:4)　　　　　　#　対角成分が1:4の対角行列
     [,1] [,2] [,3] [,4]
[1,]    1    0    0    0
[2,]    0    2    0    0
[3,]    0    0    3    0
[4,]    0    0    0    4</code></pre></div>



<p class="wp-block-paragraph">逆行列を求めます。逆行列とは元の行列との積を取ると単位行列になるような行列のことです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>  I &lt;- solve(a)
&gt; I
     [,1] [,2]      [,3] [,4]
[1,]    1  0.0 0.0000000 0.00
[2,]    0  0.5 0.0000000 0.00
[3,]    0  0.0 0.3333333 0.00
[4,]    0  0.0 0.0000000 0.25
&gt; I%*%a                 # もとの行列aとの積が4行4列の単位行列になる。 
     [,1] [,2] [,3] [,4]
[1,]    1    0    0    0
[2,]    0    1    0    0
[3,]    0    0    1    0
[4,]    0    0    0    1
&gt; a%*%I　　　　　　　　　　#　どっちから積を求めても単位行列になる
     [,1] [,2] [,3] [,4]
[1,]    1    0    0    0
[2,]    0    1    0    0
[3,]    0    0    1    0
[4,]    0    0    0    1
</code></pre></div>



<p class="wp-block-paragraph">対角成分を除く上三角成分をすべて置換する。または下三角成分を置換する関数</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>&gt; a[upper.tri(a)] &lt;- 1　　#　上三角成分を1に置換
&gt; a
     [,1] [,2] [,3] [,4]
[1,]    1    1    1    1
[2,]    0    2    1    1
[3,]    0    0    3    1
[4,]    0    0    0    4

&gt; a&lt;-diag(1:4)　　　　　#　aを作り直した
&gt; a[lower.tri(a)] &lt;- 1　#　下三角成分を1に置換
&gt; a
     [,1] [,2] [,3] [,4]
[1,]    1    0    0    0
[2,]    1    2    0    0
[3,]    1    1    3    0
[4,]    1    1    1    4

&gt; lower.tri(a)              # つまりこういう事。で、aの要素を[]内で指定して格納してます
      [,1]  [,2]  [,3]  [,4]
[1,] FALSE FALSE FALSE FALSE
[2,]  TRUE FALSE FALSE FALSE
[3,]  TRUE  TRUE FALSE FALSE
[4,]  TRUE  TRUE  TRUE FALSE</code></pre></div>



<p class="wp-block-paragraph">行列の(i,j)を(j,i)に入れ替える、いわゆる転地行列はｔ()でできる。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code> 
 &gt; a
     [,1] [,2] [,3] [,4]
[1,]    1    0    0    0
[2,]    1    2    0    0
[3,]    1    1    3    0
[4,]    1    1    1    4
&gt; t(a)
     [,1] [,2] [,3] [,4]
[1,]    1    1    1    1
[2,]    0    2    1    1
[3,]    0    0    3    1
[4,]    0    0    0    4</code></pre></div>



<p class="wp-block-paragraph">次に、行列式を求めてみましょう。　行列式とは、n次元の単位空間が、どの程度変化しているかを示します。（何を言っているかわからないけど、n次元は人間には捉えられないので気にしないようにしましょう。。。）</p>



<p class="wp-block-paragraph">行列式はdet()で求められます。　(英語でdeterminantから）</p>



<p class="wp-block-paragraph">他にcrossprod(x,y)という関数も用意されています。これはt(x)%*%yとおなじです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code> a
     [,1] [,2] [,3] [,4]
[1,]    1    0    0    0
[2,]    1    2    0    0
[3,]    1    1    3    0
[4,]    1    1    1    4
det(a)
[1] 24

&gt; crossprod(a,I)
     [,1] [,2]      [,3] [,4]
[1,]    1  0.5 0.3333333 0.25
[2,]    0  1.0 0.3333333 0.25
[3,]    0  0.0 1.0000000 0.25
[4,]    0  0.0 0.0000000 1.00
&gt; t(a)%*%I
     [,1] [,2]      [,3] [,4]
[1,]    1  0.5 0.3333333 0.25
[2,]    0  1.0 0.3333333 0.25
[3,]    0  0.0 1.0000000 0.25
[4,]    0  0.0 0.0000000 1.00</code></pre></div>



<p class="wp-block-paragraph">最後に行列の固有値と、固有ベクトルを求めましょう。ただし、固有値も固有ベクトルも、あったりなかったりします。</p>



<p class="wp-block-paragraph">固有ベクトルとは、ある行列で線形変換しても、方向が変わらないようなベクトルのこと…</p>



<p class="wp-block-paragraph">固有値とは、固有ベクトルが何倍になったかなーって値です。　ある行列をA　固有ベクトルをa　固有値をλとしたとき、</p>



<p class="has-text-align-center wp-block-paragraph">Ａa =λa</p>



<p class="wp-block-paragraph">導出方法とかは数学系のサイトに譲るとして、Rでは以下のように書きます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>&gt; a
     [,1] [,2] [,3] [,4]
[1,]    1    0    0    0
[2,]    1    2    0    0
[3,]    1    1    3    0
[4,]    1    1    1    4
&gt; eigen(a)
eigen() decomposition
$values
[1] 4 3 2 1

$vectors
     [,1]       [,2]       [,3]       [,4]
[1,]    0  0.0000000  0.0000000  0.7071068
[2,]    0  0.0000000  0.7071068 -0.7071068
[3,]    0  0.7071068 -0.7071068  0.0000000
[4,]    1 -0.7071068  0.0000000  0.0000000

&gt; det(a)
[1] 24
&gt; e &lt;- eigen(a)
&gt; e$values[1]*e$values[2]*e$values[3]*e$values[4]
[1] 24　　#　固有値の積はdet(a)行列式と一致します

&gt; b &lt;- c(3,0,1,2)
&gt; c &lt;- matrix(b,nrow = 2,ncol = 2)
&gt; c
     [,1] [,2]
[1,]    3    1
[2,]    0    2
&gt; eigen(c)
eigen() decomposition
$values
[1] 3 2

$vectors
     [,1]       [,2]
[1,]    1 -0.7071068
[2,]    0  0.7071068

#　Ａa =λa　(定義の式)を確認してみましょう
&gt; c%*%e$vectors[,1]
     [,1]
[1,]    3
[2,]    0
&gt; c%*%e$vectors[,2]
          [,1]
[1,] -1.414214
[2,]  1.414214
&gt; e$values[1]%*%e$vectors[,1]
     [,1] [,2]
[1,]    3    0
&gt; e$values[2]%*%e$vectors[,2]
          [,1]     [,2]
[1,] -1.414214 1.414214
#　どちらも一致しました。なお、固有値の並び(順番)と、固有ベクトルの[,並び(順番)]が対応しています。</code></pre></div>



<p class="wp-block-paragraph">まぁ　直接値を求めることは、あまりないかもしれませんが、一応こんな感じの結果になります。</p>



<h2 class="wp-block-heading">おすすめFXアイテム</h2>



<p class="wp-block-paragraph">過去検証や分析はMT4かFT4、Trading viewがおすすめです。</p>



<p class="wp-block-paragraph">無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF</p>



<p class="wp-block-paragraph">ガチで過去検証をやりたい人はFT4、<a href="https://h.accesstrade.net/sp/cc?rk=0100kxwf00j59w"></a></p>



<p class="wp-block-paragraph">チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www28.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""> <a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913&amp;guid=ON"><img loading="lazy" decoding="async" width="300" height="250" style="border:none;" src="//image.moshimo.com/af-img/1739/000000030913.jpg"></a><img loading="lazy" decoding="async" width="1" height="1" style="border:none;" src="//i.moshimo.com/af/i/impression?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913"> <a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">
]]></content:encoded>
					
					<wfw:commentRss>https://fp-shima.ne.jp/2023/08/23/r006-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Rのベクトルと行列、演算について(1)</title>
		<link>https://fp-shima.ne.jp/2023/08/22/r006-1/</link>
					<comments>https://fp-shima.ne.jp/2023/08/22/r006-1/#respond</comments>
		
		<dc:creator><![CDATA[FPshima]]></dc:creator>
		<pubDate>Tue, 22 Aug 2023 02:39:37 +0000</pubDate>
				<category><![CDATA[pineスクリプト]]></category>
		<category><![CDATA[R]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[教育・子育て・スキルアップ]]></category>
		<guid isPermaLink="false">https://fp-shima.ne.jp/?p=3342</guid>

					<description><![CDATA[もっと早くRの基本操作について書くべきでした…　と反省を込めて　色々と基本操作、便利操作を記載してみようと思います。 色々とサイトをめぐってみるとわかると思いますが、Rでは、日本でいうところの外積（2つのベクトルに直交するベクトルが求められ…]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">もっと早くRの基本操作について書くべきでした…　と反省を込めて　色々と基本操作、便利操作を記載してみようと思います。</p>



<p class="wp-block-paragraph">色々とサイトをめぐってみるとわかると思いますが、Rでは、日本でいうところの外積（2つのベクトルに直交するベクトルが求められるもの）を直接求める関数は、無いようです。(パッケージを入れると使えるが）</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="468" height="60" alt="" src="https://www27.a8.net/svt/bgt?aid=230128434770&wid=004&eno=01&mid=s00000022371001004000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www17.a8.net/0.gif?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" alt="">



<h2 class="wp-block-heading">データを作ってみよう</h2>



<p class="wp-block-paragraph">当サイトでは、主に投資関係のデータを扱うことが多いので、それに関した操作を示してきております。</p>



<p class="wp-block-paragraph">ただ、プログラミング初心者とか、そういった層には随分と不親切だなぁという事で、基本操作から書いていきます。　一部は、<a href="https://fp-shima.ne.jp/2022/12/18/r001/" data-type="post" data-id="2989">Rの導入関係の記事</a>で示していますし、<a href="https://fp-shima.ne.jp/2023/01/25/r002/" data-type="post" data-id="3037">重複する点</a>もあるかも。</p>



<p class="wp-block-paragraph">Rは主にベクトルを扱います。　ベクトルってーと数学っぽくて嫌忌する方も居るかもしれません。ここでいうベクトルは、数字や文字の並び程度に考えてもらえれば良いと思います。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>a &lt;- c(1,2,3,4)
b = c(1:4)
&gt; a
[1] 1 2 3 4
&gt; b
[1] 1 2 3 4
&gt; a+b
[1] 2 4 6 8
&gt; a*b
[1]  1  4  9 16</code></pre></div>



<p class="wp-block-paragraph">左の変数（a,bのこと）に　1~4の数字が並んだベクトルを格納しています。ベクトルの作成にはc()を使います。各要素を「,」で区切ります。</p>



<p class="wp-block-paragraph">&lt;-　や　＝　を使うと　その前の文字を変数として　右側にある何かを格納することが出来ます。</p>



<p class="wp-block-paragraph">こういった操作を　「<span class="fontcolor" style="color:#ff3333;">定義</span>」とか「<span class="fontcolor" style="color:#ff3333;">格納</span>」とか呼びます。　単純に設定するとかって表現することも。</p>



<p class="wp-block-paragraph">連番の場合は1:4のように　「：」でスタートと終わりを設定すれば表記できます。</p>



<p class="wp-block-paragraph">＋は各要素の足し算、＊は各要素を掛け算してくれます。</p>



<p class="wp-block-paragraph">文字列も入れられます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code> c &lt;- c(&quot;Hello&quot;,&quot;World&quot;)
&gt; c
[1] &quot;Hello&quot; &quot;World&quot;</code></pre></div>



<p class="wp-block-paragraph">文字列の場合は　””で囲います。　違いについて見てましょう</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>&gt; class(a)
[1] &quot;numeric&quot;
&gt; class(b)
[1] &quot;integer&quot;
&gt; class(c)
[1] &quot;character&quot;</code></pre></div>



<p class="wp-block-paragraph">R上ではデータは様々な属性を持っています。　属性はclass(）で確認することが出来ます。</p>



<p class="wp-block-paragraph">aは「数値」、bは「整数」、cは「文字」であることがわかりました。解析をする際には、こういった属性が重要になることがあります。が、とりあえず、文字か数値かその他の属性があるんだな～位に認識しておきましょう。</p>



<h3 class="wp-block-heading">R基本の演算子</h3>



<p class="wp-block-paragraph">足し算と掛け算は、既に示しましたが、プログラミングでは、「<span class="fontcolor" style="color:#ff3333;">演算子</span>」と呼ばれる、すでに役割がふられた記号が存在します。　まずは計算に使うものから</p>



<figure class="wp-block-table is-style-stripes has-medium-font-size"><table style="border-style:none;border-width:0px"><tbody><tr><td>演算子</td><td class="has-text-align-center" data-align="center"></td></tr><tr><td>+</td><td class="has-text-align-center" data-align="center">和</td></tr><tr><td>-</td><td class="has-text-align-center" data-align="center">差</td></tr><tr><td>*</td><td class="has-text-align-center" data-align="center">積</td></tr><tr><td>/</td><td class="has-text-align-center" data-align="center">商</td></tr><tr><td>%/%</td><td class="has-text-align-center" data-align="center">整数商</td></tr><tr><td>%%</td><td class="has-text-align-center" data-align="center">剰余</td></tr><tr><td>^</td><td class="has-text-align-center" data-align="center">乗</td></tr></tbody></table></figure>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code> 1+2
[1] 3

 5-3
[1] 2

 2*4
[1] 8

 9/3
[1] 3

 13%/%4　　　　#　3　余り　1　の　3
[1] 3

 13%%4　　　　#　3　余り　1　の　1
[1] 1

 2^10
[1] 1024
 </code></pre></div>



<p class="wp-block-paragraph">次に　その他の、論理演算子等を見てみましょう　条件判定に用います。　正しければTRUE　間違っていればFALSEです。　TRUEやFALSEを論理値と呼びます。</p>



<figure class="wp-block-table"><table><tbody><tr><td>演算子</td><td></td></tr><tr><td>&gt;</td><td>より大きい</td></tr><tr><td>&gt;=</td><td>以上</td></tr><tr><td>&lt;</td><td>より小さい</td></tr><tr><td>&lt;=</td><td>以下</td></tr><tr><td>&amp;　または　&amp;&amp;</td><td>かつ　and</td></tr><tr><td>|　または　||</td><td>または　or</td></tr><tr><td>==</td><td>等しい</td></tr><tr><td>!=</td><td>等しくない</td></tr><tr><td>%in%</td><td>含まれるか判定</td></tr></tbody></table></figure>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>&gt; 1&gt;2
[1] FALSE
&gt; 2&gt;2
[1] FALSE
&gt; 2&gt;=2
[1] TRUE
&gt; 2&lt;2
[1] FALSE
&gt; 2&lt;=2
[1] TRUE
&gt; 2 &lt;= 2 && 3 &gt;2　#　両方正しい
[1] TRUE
&gt; 2 &lt;= 2 & 3 &gt;4　#　片方違う
[1] FALSE
&gt; 2 &lt;= 2 | 3 &gt;4　#　どっちか正しければOK
[1] TRUE
&gt;  1　== 2
[1] FALSE
&gt;  1 != 2
[1] TRUE</code></pre></div>



<p class="wp-block-paragraph">数値が正しいか否かを判断しましたが、文字列にも使えます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>&gt; a &lt;- &quot;hello&quot;
&gt; b &lt;- &quot;world&quot;
&gt; c &lt;- c(&quot;hello&quot;,&quot;world&quot;)　#　文字列をベクトルとして扱う
&gt; d &lt;- c(&quot;good&quot;, &quot;nice&quot;, &quot;world&quot;)

&gt; a == c
[1]  TRUE FALSE

&gt;  c == b
[1] FALSE  TRUE
&gt;  c != b
[1]  TRUE FALSE

&gt; c %in% d
[1] FALSE  TRUE # cの&quot;hello&quot;は含まれないけど、&quot;world&quot;は含まれる
&gt; d %in% c 
[1] FALSE FALSE  TRUE
&gt; a %in% d
[1] FALSE
&gt; d %in% b
[1] FALSE FALSE  TRUE</code></pre></div>



<p class="wp-block-paragraph">%in%は、データを抽出した際に、同じものがあるかどうかを判定したりするときに重宝します。</p>



<h3 class="wp-block-heading">行列</h3>



<p class="wp-block-paragraph">行列はベクトルの拡張概念と解釈しましょう。　複数のベクトルを並べているとも言えますし、色々なデータの表とも考えることが出来るでしょう。試しに作ってみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>e &lt;- matrix(1:12, nrow = 3 , ncol = 4)
&gt; e
     [,1] [,2] [,3] [,4]
[1,]    1    4    7   10
[2,]    2    5    8   11
[3,]    3    6    9   12
&gt; class(e)
[1] &quot;matrix&quot; &quot;array&quot; </code></pre></div>



<p class="wp-block-paragraph">matrixは英語で行列のこと。Rではmatrix(データ、nrow=行の数,ncol=列の数）と指定することが出来ます。</p>



<p class="wp-block-paragraph">eで呼び出した際、3行4列の行列が呼び出せていますね。</p>



<p class="wp-block-paragraph">また、各行、各列の端に[,1]　[,2]や[3,]のような表記があります。これは[行番号,列番号]を示しています。</p>



<p class="wp-block-paragraph">[]で”,”を付けずに呼び出すと、要素の順番に呼び出されます。以下の例で意味を理解してください。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code> e &lt;- matrix(1:12, nrow = 3 , ncol = 4)
&gt; e
     [,1] [,2] [,3] [,4]
[1,]    1    4    7   10
[2,]    2    5    8   11
[3,]    3    6    9   12
&gt; class(e)
[1] &quot;matrix&quot; &quot;array&quot; 
&gt; e[1]　#　eの一つ目の要素を呼び出す
[1] 1
&gt; e[1,]　#　eの1行目の要素を呼び出す
[1]  1  4  7 10
&gt; e[,1]　#　eの1列目の要素を呼び出す
[1] 1 2 3
&gt; e[12]　#　eの12番目の要素を呼び出す
[1] 12
&gt; e[3,4]　#　eの3行4列目の要素を呼び出す
[1] 12
&gt; e[c(1,3),]　#　eの1行目、3行目を呼び出す。
     [,1] [,2] [,3] [,4]
[1,]    1    4    7   10
[2,]    3    6    9   12
&gt;e[c(1,3),c(2,4)]　#　eの1行目、3行目の　2列目、4列目を呼び出す。
     [,1] [,2]
[1,]    4   10
[2,]    6   12</code></pre></div>



<p class="wp-block-paragraph">行列には、名前を付けることが出来ます。また、名前がついている場合、名前で呼び出すことも出来ます。</p>



<p class="wp-block-paragraph">それぞれ命名するための関数は、colnames()と、rownames()です。</p>



<p class="wp-block-paragraph">正確にはeの行名(最初は空の)を呼び出して、&lt;-を使ってc(~)のベクトルを格納しています。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>&gt; colnames(e) &lt;- c(&quot;col1&quot;,&quot;col2&quot;,&quot;col3&quot;,&quot;col4&quot;)
&gt; rownames(e) &lt;- c(&quot;row1&quot;,&quot;row2&quot;,&quot;row3&quot;)
&gt; e
     col1 col2 col3 col4
row1    1    4    7   10
row2    2    5    8   11
row3    3    6    9   12

&gt; e[,&quot;col2&quot;]
row1 row2 row3 
   4    5    6 
&gt; e[&quot;row2&quot;,]
col1 col2 col3 col4 
   2    5    8   11 
&gt; e[&quot;row3&quot;,&quot;col3&quot;]
[1] 9</code></pre></div>



<p class="wp-block-paragraph">行列の演算は、Rだとちょっと違うところがあります。</p>



<figure class="wp-block-table"><table><tbody><tr><td>式</td><td></td></tr><tr><td>+</td><td>各要素との和。または行列同士の和</td></tr><tr><td>-</td><td>各要素に-1をかける。または、各要素との差、または、行列同士の差。</td></tr><tr><td>*</td><td>各要素同士の積を取る。</td></tr><tr><td>%*%</td><td>行列同士の積　ベクトル同士の場合は内積を求める</td></tr></tbody></table><figcaption class="wp-element-caption">ちょっとわかりにくいかもしれません。行列の再定義から始めます。</figcaption></figure>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>&gt; a &lt;- matrix(1:9,nrow = 3, ncol = 3)　#　3行3列
&gt; b &lt;- matrix(rep(1:3,3),nrow = 3, ncol = 3)　#　rep(A,B)はAをB回繰り返す
&gt; a
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    2    5    8
[3,]    3    6    9
&gt; 1+a
     [,1] [,2] [,3]
[1,]    2    5    8
[2,]    3    6    9
[3,]    4    7   10

&gt; b
     [,1] [,2] [,3]
[1,]    1    1    1
[2,]    2    2    2
[3,]    3    3    3

&gt; a+b
     [,1] [,2] [,3]
[1,]    2    5    8
[2,]    4    7   10
[3,]    6    9   12
&gt; a-b
     [,1] [,2] [,3]
[1,]    0    3    6
[2,]    0    3    6
[3,]    0    3    6
&gt; -b
     [,1] [,2] [,3]
[1,]   -1   -1   -1
[2,]   -2   -2   -2
[3,]   -3   -3   -3

&gt; a*b　　　　　　　　　#　各要素の積
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    4   10   16
[3,]    9   18   27
&gt; a%*%b　　　　　　　　#　行列の積
     [,1] [,2] [,3]
[1,]   30   30   30
[2,]   36   36   36
[3,]   42   42   42
&gt; b*a　　　　　　　　　#　各要素の積なので、並びが変わっても計算結果が同じ
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    4   10   16
[3,]    9   18   27
&gt; b%*%a　　　　　　　#　行列の積なので、並びが変わると結果が変わる。
     [,1] [,2] [,3]
[1,]    6   15   24
[2,]   12   30   48
[3,]   18   45   72

&gt; c(1,0)%*%c(0,1)　　#　直交するベクトルの内積は0です。
     [,1]
[1,]    0</code></pre></div>



<p class="wp-block-paragraph">%*%が行列の積の演算子となっていて、普通の＊を使うと各要素同士を計算します。</p>



<p class="wp-block-paragraph">したがって、＊の場合、m行n列のm同士、n同士が一致していないと計算できません(つまり、同じサイズの行列)。一方、%*%は行列の積なので、左の行と、右の列の数が一致していれば計算できます。</p>



<p class="wp-block-paragraph">例は3行3列なので、どちらでも計算が出来ますが、行列の積の場合、計算結果が異なります(左の1行目の各要素と、右の1列目の各要素の積を、合計するため）。</p>



<p class="wp-block-paragraph">次回は行列自体の演算について、見ていこうと思います。</p>



<h2 class="wp-block-heading">おすすめFXアイテム</h2>



<p class="wp-block-paragraph">過去検証や分析はMT4かFT4、Trading viewがおすすめです。</p>



<p class="wp-block-paragraph">無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF</p>



<p class="wp-block-paragraph">ガチで過去検証をやりたい人はFT4、<a href="https://h.accesstrade.net/sp/cc?rk=0100kxwf00j59w"></a></p>



<p class="wp-block-paragraph">チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www28.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""> <a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913&amp;guid=ON"><img loading="lazy" decoding="async" width="300" height="250" style="border:none;" src="//image.moshimo.com/af-img/1739/000000030913.jpg"></a><img loading="lazy" decoding="async" width="1" height="1" style="border:none;" src="//i.moshimo.com/af/i/impression?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913"> <a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">
]]></content:encoded>
					
					<wfw:commentRss>https://fp-shima.ne.jp/2023/08/22/r006-1/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>より深くquantmodで解析してみよう！</title>
		<link>https://fp-shima.ne.jp/2023/08/18/r005/</link>
					<comments>https://fp-shima.ne.jp/2023/08/18/r005/#respond</comments>
		
		<dc:creator><![CDATA[FPshima]]></dc:creator>
		<pubDate>Fri, 18 Aug 2023 07:45:29 +0000</pubDate>
				<category><![CDATA[pineスクリプト]]></category>
		<category><![CDATA[R]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[教育・子育て・スキルアップ]]></category>
		<guid isPermaLink="false">https://fp-shima.ne.jp/?p=3291</guid>

					<description><![CDATA[前回扱ったquantmodを使って色々解析してみようっていう試み。 初心者からプロまで納得のFXTF &#124; キャッシュバックあり！ 解析に使う 前回の記事で使ったデータを使用します。 そこまでのデータ準備は以下のようにしましょう。 このデータ…]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">前回扱ったquantmodを使って色々解析してみようっていう試み。</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="468" height="60" alt="" src="https://www27.a8.net/svt/bgt?aid=230128434770&wid=004&eno=01&mid=s00000022371001004000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www17.a8.net/0.gif?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" alt="">



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+686ZM" rel="nofollow">初心者からプロまで納得のFXTF | キャッシュバックあり！</a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www14.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+686ZM" alt="">



<a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">



<h2 class="wp-block-heading">解析に使う</h2>



<p class="wp-block-paragraph">前回の記事で使ったデータを使用します。</p>



<p class="wp-block-paragraph">そこまでのデータ準備は以下のようにしましょう。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>install.packages(&quot;quantmod&quot;)
data &lt;- read.csv(&quot;O1.csv&quot;)
data$time &lt;- as.POSIXct(data$time,tz=&quot;Asia/Tokyo&quot;,origin = &quot;1970-01-01&quot;)
timename &lt;- data[,1]
tdata&lt;- data[-1]
rownames(tdata) &lt;- timename
xdata &lt;- as.xts(tdata)</code></pre></div>



<p class="wp-block-paragraph">このデータ形状を扱える関数は沢山あり、以下のようなものです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>Op(x)　# 始値の取得
Hi(x)　#　高値の取得
Lo(x)　#　安値の取得
Cl(x)　#　終値の取得
Vo(x)　#　取引量の取得
Ad(x)　#　調整済み価格の取得(調整済みデータがあれば)
seriesHi(x)　#　最高値　Max(Hi(x))を付けたデータ
seriesLo(x)　#　最安値を付けたデータ
seriesIncr(x, thresh=0, diff.=1L)　#　1つ前に比べて上昇してるか
seriesDecr(x, thresh=0, diff.=1L)　#　1つ前に比べて下落してるか
OpCl(x)　#　始値に対しての増減(%)
ClCl(x)　#　ひとつ前の終値に対しての増減
HiCl(x)　#　高値と終値の比率
LoCl(x)　#　安値と終値の比率
LoHi(x)　#　高安値の比率
OpHi(x)　#　始値と高値の比率
OpLo(x)　#　始値と安値の比率
OpOp(x)　#　ひとつ前の始値の比率
HL(x)　#　高安値の取得
HLC(x)　#　高安終値の取得
OHLC(x)　#　高安値、始値、終値の取得
OHLCV(x)　#　OHLCにvolumeも取得</code></pre></div>



<p class="wp-block-paragraph">xにはxts化したデータが入ります。すなわち、本記事上では「xdata」が該当します。</p>



<p class="wp-block-paragraph">他に収益率を返すものもあります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>allReturns(x, subset=NULL, type=&#39;arithmetic&#39;,　leading=TRUE)　#以下はすべて引数一緒
yearlyReturn(x)　#　年間のリターンを計算　subsetで期間を指定
annualReturn(x)　#　type　=　は単発計算か連続計算か、指定はlog
quarterlyReturn(x)　
monthlyReturn(x)　
weeklyReturn(x)
dailyReturn(x)
</code></pre></div>



<p class="wp-block-paragraph">leadingがFALSEにしても計算結果変わらなくて、ちょっとわからなかったです、、、　すみません。</p>



<p class="wp-block-paragraph">期間データが不完全な時に計算結果を返すか否かだと思うのですが…</p>



<p class="wp-block-paragraph">また、山と谷を検出するような関数もあります。が、ちょっとうまくデータを抜き取れていない感じがします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>p &lt;- findPeaks(sin(seq(1,10,.1)))
v &lt;- findValleys(sin(seq(1,10,.1)))
sin(seq(1,10,.1))[p]
plot(sin(seq(1,10,.1))[p])
plot(sin(seq(1,10,.1)),type=&#39;l&#39;)
points(p,sin(seq(1,10,.1))[p])
points(v,sin(seq(1,10,.1))[v])</code></pre></div>



<figure class="wp-block-image aligncenter size-full is-resized"><img loading="lazy" decoding="async" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/peakvall.png" alt="" class="wp-image-3333" style="width:668px;height:515px" width="668" height="515" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/peakvall.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/peakvall-300x231.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/peakvall-150x116.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<p class="wp-block-paragraph">こちらはサイン関数の山と谷を検出しています。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>p &lt;- findPeaks(ddata$xdata.High)　#　日足データの山を検出
v &lt;- findValleys(ddata$xdata.Low)　#　日足データの谷を検出
ddata[p]
ddata[v]</code></pre></div>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="604" height="158" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/peakvall2.png" alt="" class="wp-image-3334" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/peakvall2.png 604w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/peakvall2-300x78.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/peakvall2-150x39.png 150w" sizes="auto, (max-width: 604px) 100vw, 604px" /></figure>



<p class="wp-block-paragraph">あっている…？のかな。　ちょっと微妙ですが、計算上はこうなってる様子。</p>



<h3 class="wp-block-heading">時系列を活用した解析</h3>



<p class="wp-block-paragraph">続いて、時系列をうまい事使った関数を紹介</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>nddata &lt;- Next(ddata , 1)　#　1つ次のOpenを格納　high等を選びたいなら$high等で指定
lddata &lt;- Lag(ddata$xdata.Close,3)　#　3つ前の終値を格納
ddata[1:5]　#　比較しやすいように先頭5行を見てみる
nddata[1:5]
lddata[1:5]</code></pre></div>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="587" height="274" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/nextlag.png" alt="" class="wp-image-3335" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/nextlag.png 587w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/nextlag-300x140.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/nextlag-150x70.png 150w" sizes="auto, (max-width: 587px) 100vw, 587px" /></figure>



<p class="wp-block-paragraph">前後にずれたデータが作れました。</p>



<p class="wp-block-paragraph">これを応用して、予測モデルを組んでみます。</p>



<h3 class="wp-block-heading">quantmodで予測してみる！</h3>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>model &lt;- specifyModel(Next(OpCl(ddata))~Lag(OpHi(xdata),0:3))　#　日足の始値終値比を1分足の始値高値比の0~3を使って予測するモデルを定義
bmodel &lt;- buildModel(model,method = &quot;lm&quot;,training.per = c(&quot;2023-07-24&quot;,&quot;2023-07-31&quot;))　#　modelの計算式でtraining.perで指定した期間を使用し学習する。方法はlm(線形回帰)
results &lt;- tradeModel(bmodel)　#　入力されている全期間を用いて予測モデルに従うとどの程度のリターンが得られるか
results$return</code></pre></div>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="604" height="188" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/result1.png" alt="" class="wp-image-3336" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/result1.png 604w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/result1-300x93.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/result1-150x47.png 150w" sizes="auto, (max-width: 604px) 100vw, 604px" /></figure>



<p class="wp-block-paragraph">負けまくりですね…　きっと、予測すべき目的変数や、説明変数、計算方法が良くないのだと思います。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>model &lt;- specifyModel(Next(OpCl(xdata))~Lag(OpHi(xdata),0:300))　#予測対象を1分足にして、300分前まで使ってみる
bmodel &lt;- buildModel(model,method = &quot;lm&quot;,training.per = c(&quot;2023-07-24&quot;,&quot;2023-07-31&quot;))
results &lt;- tradeModel(bmodel)
results$return</code></pre></div>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="706" height="305" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/result2.png" alt="" class="wp-image-3337" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/result2.png 706w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/result2-300x130.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/result2-150x65.png 150w" sizes="auto, (max-width: 706px) 100vw, 706px" /></figure>



<p class="wp-block-paragraph">現実的なトレードではありませんが、一応黒字が出るかもしれないモデルになりました。まぁ1分足をずーっと計算して、トレードし続けるという絶望です。恐らく手数料負けします。</p>



<p class="wp-block-paragraph">予測のための計算式を変えてみましょう。</p>



<p class="wp-block-paragraph">今回は決定木という意思決定法を用いる、randomforestという方法を選んでみました。</p>



<p class="wp-block-paragraph">回帰というよりは分類に強い機械学習法のひとつです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>install.packages(&quot;randomForest&quot;)
library(randomForest)
model &lt;- specifyModel(Next(OpCl(ddata))~Lag(OpHi(xdata),0:3))　#日足の始値終値比を予測
bmodel &lt;- buildModel(model,method = &quot;randomForest&quot;,training.per = c(&quot;2023-07-24&quot;,&quot;2023-07-31&quot;))
#　モデル形成のロジックを決定木を使うランダムフォレストに変更してみた
results &lt;- tradeModel(bmodel)
results$return</code></pre></div>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="594" height="207" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/result3.png" alt="" class="wp-image-3338" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/result3.png 594w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/result3-300x105.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/result3-150x52.png 150w" sizes="auto, (max-width: 594px) 100vw, 594px" /></figure>



<p class="wp-block-paragraph">翌日の日足終値を予測するモデルで、そこそこ勝てそうな結果が得られました。</p>



<p class="wp-block-paragraph">変数を変えてみたり、ロジックを変えてみて色々やると、恒常的に勝てる何かが見つかるかもしれませんよ！　使えるロジックと、パッケージは以下を参照してください。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>method [package] #　使用可能なmethod[パッケージ名]
#　install.packages(パッケージ名)　した後に、　library(パッケージ名)すれば使えるようになります
#　パッケージ名が無いものはRにもとから入っている予測方法です。ものによって要求される変数等が異なります。
lm
glm
loess
step
ppr
rpart[rpart]
tree[tree]
randomForest[randomForest] 
mars[mda]
polymars[polspline] 
lars[lars]
rq[quantreg] 
lqs[MASS] 
rlm[MASS] 
svm[e1071]
nnet[nnet]
</code></pre></div>



<p class="wp-block-paragraph">急に進みすぎた感はありますが、Rって使えますよね！今後も、ぼちぼち紹介していきます</p>



<h2 class="wp-block-heading">おすすめFXアイテム</h2>



<p class="wp-block-paragraph">過去検証や分析はMT4かFT4、Trading viewがおすすめです。</p>



<p class="wp-block-paragraph">無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF</p>



<p class="wp-block-paragraph">ガチで過去検証をやりたい人はFT4、<a href="https://h.accesstrade.net/sp/cc?rk=0100kxwf00j59w"></a></p>



<p class="wp-block-paragraph">チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www28.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""> <a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913&amp;guid=ON"><img loading="lazy" decoding="async" width="300" height="250" style="border:none;" src="//image.moshimo.com/af-img/1739/000000030913.jpg"></a><img loading="lazy" decoding="async" width="1" height="1" style="border:none;" src="//i.moshimo.com/af/i/impression?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913"> <a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">
]]></content:encoded>
					
					<wfw:commentRss>https://fp-shima.ne.jp/2023/08/18/r005/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Rでチャートの解析もできますよ！quantmod</title>
		<link>https://fp-shima.ne.jp/2023/08/17/r004-2/</link>
					<comments>https://fp-shima.ne.jp/2023/08/17/r004-2/#respond</comments>
		
		<dc:creator><![CDATA[FPshima]]></dc:creator>
		<pubDate>Thu, 17 Aug 2023 08:34:10 +0000</pubDate>
				<category><![CDATA[pineスクリプト]]></category>
		<category><![CDATA[R]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[教育・子育て・スキルアップ]]></category>
		<guid isPermaLink="false">https://fp-shima.ne.jp/?p=3325</guid>

					<description><![CDATA[Rでも色々とチャートを出したり、テクニカル分析をしたり出来ます。 さらに、その後、色々な解析まで行けるので、MT4だけじゃない解析もいいよって話です。 トレーディングビューからデータを取得する！ これまでにも紹介していますが、ざっとデータを…]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Rでも色々とチャートを出したり、テクニカル分析をしたり出来ます。</p>



<p class="wp-block-paragraph">さらに、その後、色々な解析まで行けるので、MT4だけじゃない解析もいいよって話です。</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="468" height="60" alt="" src="https://www27.a8.net/svt/bgt?aid=230128434770&wid=004&eno=01&mid=s00000022371001004000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www17.a8.net/0.gif?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" alt="">



<h2 class="wp-block-heading">トレーディングビューからデータを取得する！</h2>



<p class="wp-block-paragraph">これまでにも紹介していますが、ざっとデータを取る分にはトレーディングビューで十分。</p>



<p class="wp-block-paragraph">ただ、詳細な解析を行いたいのであれば、他のデータベースから、ヒストリカルデータを取得するほうが良いでしょう。FXTFからの過去データ取得に関しては<a href="https://fp-shima.ne.jp/2023/08/15/kakodata/" data-type="post" data-id="3308">別記事</a>に記載しています。</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+686ZM" rel="nofollow">初心者からプロまで納得のFXTF | キャッシュバックあり！</a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www14.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+686ZM" alt="">



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="499" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-1024x499.png" alt="" class="wp-image-3263" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-1024x499.png 1024w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-300x146.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-150x73.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-768x374.png 768w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-1536x749.png 1536w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev.png 1649w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">



<p class="wp-block-paragraph">今回はとりあえず1分足でやってみましょう。好きな通貨ペアで　1分足にして　データをエクスポートします。</p>



<p class="wp-block-paragraph">その際、時間をUNIXタイムスタンプにします。</p>



<h2 class="wp-block-heading">Rの準備をしよう！</h2>



<p class="wp-block-paragraph">今回紹介するのはRのパッケージのひとつquantmodです。</p>



<p class="wp-block-paragraph">Quantitative Financial Modelling Frameworkの略で、金融関係の解析に特化したパッケージです。</p>



<p class="wp-block-paragraph">同時にTTRやxts　zooといったパッケージもインストールされます。（たぶん）</p>



<p class="wp-block-paragraph">インストールされない場合は、それぞれインストールしましょう。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>install.packages(&quot;quantmod&quot;)
install.packages(&quot;TTR&quot;) #恐らくなくても大丈夫
install.packages(&quot;xts&quot;)　#恐らくなくても大丈夫
install.packages(&quot;zoo&quot;)　#恐らくなくても大丈夫
install.packages(&quot;curl&quot;)　#恐らくなくても大丈夫</code></pre></div>



<h3 class="wp-block-heading">quantmodを使ってみよう！</h3>



<p class="wp-block-paragraph">まずは、トレーディングビューなりなんなりで準備した、データを読み込みます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>data &lt;- read.csv(&quot;O1.csv&quot;)　#今回はO1.csvという名前で1分足を準備してます。
data$time &lt;- as.POSIXct(data$time,tz=&quot;Asia/Tokyo&quot;, origin = &quot;1970-01-01&quot;)
 #UNIXタイムスタンプを日本時間に変換
timename &lt;- data[,1]　#　1列目が時間のパラメータであると思いますので、timenameに格納
tdata&lt;- data[-1]　#　dataから時間のパラメータを削除したtdataを作成
rownames(tdata) &lt;- timename　#　tdataの行名にtimenameをつける</code></pre></div>



<p class="wp-block-paragraph">この後に扱うデータ形状はxtsという形なのですが、時間の判断がrownameである必要があるので、加工しなおします。こんな風にすればいいんだなっと体に覚えさせてみましょう。</p>



<p class="wp-block-paragraph">なお、以下のように書くと、1行目のデータを列名として読み込めます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>tdata &lt;- read.csv(&quot;O1.csv&quot;, row.names = 1)　#　1列目を列名として読み込む</code></pre></div>



<p class="wp-block-paragraph">ただし、後者の場合は行名にUNIXタイムスタンプが入ってしまうので、変換できなくなってしまいます。既にyy-mm-dd～になっているような場合に有効です。</p>



<h3 class="wp-block-heading">xtsデータに変換</h3>



<p class="wp-block-paragraph">xtsは、Rに、もともと入っている、ts（time series)というパッケージの派生です。時間の概念を、扱いやすくしてくれる、パッケージです。</p>



<p class="wp-block-paragraph">細かい事は気にせず、変換してみましょう。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>xdata &lt;- as.xts(tdata)　#tdataをxtsに変換</code></pre></div>



<p class="wp-block-paragraph">as.~は色々とありますが、()内を~として扱え！って感じのプログラムです。この場合、tdataをxtsとして扱え！ってこと。</p>



<p class="wp-block-paragraph">UNIXタイムスタンプから変換した場合は、東京時間(日本時間）で分単位になっていると思います。</p>



<p class="wp-block-paragraph">試しに描画してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>plot(xdata)</code></pre></div>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="668" height="515" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdata-1.png" alt="" class="wp-image-3323" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdata-1.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdata-1-300x231.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdata-1-150x116.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<p class="wp-block-paragraph">なんだか不思議なチャートになっています。</p>



<p class="wp-block-paragraph">ローソク足で書いてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>candleChart(xdata)</code></pre></div>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="668" height="502" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdatacandle.png" alt="" class="wp-image-3314" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdatacandle.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdatacandle-300x225.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdatacandle-150x113.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<p class="wp-block-paragraph">範囲を指定してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>candleChart(xdata[&quot;2023-07-28::2023-07-29&quot;])</code></pre></div>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="668" height="502" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdata07280729.png" alt="" class="wp-image-3315" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdata07280729.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdata07280729-300x225.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdata07280729-150x113.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<p class="wp-block-paragraph">7月28日から7月29日までの、1分足データが抜き出せました。</p>



<h3 class="wp-block-heading">足の変換</h3>



<p class="wp-block-paragraph">時間足の変換をしてみます。</p>



<p class="wp-block-paragraph">さらに、日足でチャートを書いてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>m15 &lt;- to.minutes15(xdata)　#　15分足に変換
m30 &lt;- to.minutes30(xdata)　#　30分足
h1 &lt;- to.hourly(xdata)　#　1時間足
ddata &lt;- to.daily(xdata)　#　日足に変換
candleChart(ddata)</code></pre></div>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="668" height="502" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdataday.png" alt="" class="wp-image-3316" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdataday.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdataday-300x225.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/plotxdataday-150x113.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<p class="wp-block-paragraph">週の平均値や月の平均値も計算することが出来ます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-csharp" data-lang="C#"><code>apply.weekly(xdata,mean) # () 内は、（データ、function）この場合平均(mean)
apply.monthly(xdata,var)　#　月の分散を計算（注：今回のデータの場合　まるごとひと月データ入ってません
apply.daily(xdata,sd)　#　日の標準偏差を計算</code></pre></div>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="745" height="480" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/230816weekly.png" alt="" class="wp-image-3318" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/230816weekly.png 745w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/230816weekly-300x193.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/230816weekly-150x97.png 150w" sizes="auto, (max-width: 745px) 100vw, 745px" /></figure>



<p class="wp-block-paragraph">手っ取り早く終値だけでいいから見たいんだ！トレーディングビューもFXTF口座も無いよ！って人は以下のおまじないをＲに打ってください</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>usd &lt;- getFX(&quot;USD/JPY&quot;,from = &quot;2023-05-01&quot;, to = &quot;2023-08-16&quot;,　auto.assign = FALSE) 
# 終値（だと思う）だけ過去180日間であれば取得可能、from A to B内を変えてください。
plot(usd)　#　描画してみる</code></pre></div>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="668" height="515" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usd0501-0814.png" alt="" class="wp-image-3319" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usd0501-0814.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usd0501-0814-300x231.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usd0501-0814-150x116.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<p class="wp-block-paragraph">取得時点で更新されていなかったのか2023年8月14日までの終値グラフが書かれました。</p>



<p class="wp-block-paragraph">高安値情報が無いので、ローソク足はかけない模様。</p>



<h2 class="wp-block-heading">株価も取得できるよ！quantmodなら！</h2>



<p class="wp-block-paragraph">quantmodでは、直接、株価を取得して、チャートを書いたりすることも出来ます。</p>



<p class="wp-block-paragraph">ためしに、みずほフィナンシャルグループのデータを取得してみましょう</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>mizuho &lt;- getSymbols(&quot;8411&quot;,src = &quot;yahooj&quot;,from =&quot;2022-01-01&quot;, to = &quot;2023-07-31&quot;, auto.assign = FALSE) 
#日本のyahooからfrom A to B期間の証券番号&quot;8411&quot;のデータを取得してmizuhoに格納
candleChart(mizuho,subset = &quot;2023-01-01::2023-07-31&quot;)　#期間指定をsubset以下で行いローソク足表示
chartSeries(mizuho,subset = &quot;2023::2023-07&quot;,theme = &quot;white&quot;,TA = &quot;addBBands()&quot;)　
#期間指定は、年だけ、月までとかでも可、色使いを白に変更し、ボリンジャーバンドもつけてみる</code></pre></div>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="668" height="515" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhocandle.png" alt="" class="wp-image-3320" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhocandle.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhocandle-300x231.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhocandle-150x116.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="668" height="515" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhocandlewithBB.png" alt="" class="wp-image-3321" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhocandlewithBB.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhocandlewithBB-300x231.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhocandlewithBB-150x116.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<p class="wp-block-paragraph">なんだか、それっぽいチャートが書けますね！</p>



<p class="wp-block-paragraph">みずほのデータを簡単に解析してみましょう。　為替と同様に書いてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>apply.weekly(mizuho,mean)　#　週でまとめた平均値
apply.monthly(mizuho$YJ8411.Close,var)　#　月でまとめた終値の分散
apply.daily(c(mizuho$YJ8411.Low,mizuho$YJ8411.High),sd)　#日でまとめた高安値の標準偏差
summary(mizuho)　#　簡単便利にデータを要約
</code></pre></div>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="754" height="242" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhosummary.png" alt="" class="wp-image-3322" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhosummary.png 754w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhosummary-300x96.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/mizuhosummary-150x48.png 150w" sizes="auto, (max-width: 754px) 100vw, 754px" /></figure>



<p class="wp-block-paragraph">サマリでわかる事は微妙です。</p>



<p class="wp-block-paragraph">apply.~に関しては色々と参考になるものもあると思います。</p>



<p class="wp-block-paragraph">他にも色々と解析が可能ですが、長くなりそうなので、またの機会に。</p>



<h2 class="wp-block-heading">おすすめFXアイテム</h2>



<p class="wp-block-paragraph">過去検証や分析はMT4かFT4、Trading viewがおすすめです。</p>



<p class="wp-block-paragraph">無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF</p>



<p class="wp-block-paragraph">ガチで過去検証をやりたい人はFT4、<a href="https://h.accesstrade.net/sp/cc?rk=0100kxwf00j59w"></a></p>



<p class="wp-block-paragraph">チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www28.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""> <a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913&amp;guid=ON"><img loading="lazy" decoding="async" width="300" height="250" style="border:none;" src="//image.moshimo.com/af-img/1739/000000030913.jpg"></a><img loading="lazy" decoding="async" width="1" height="1" style="border:none;" src="//i.moshimo.com/af/i/impression?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913"> <a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">
]]></content:encoded>
					
					<wfw:commentRss>https://fp-shima.ne.jp/2023/08/17/r004-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>TradingView以外で過去データを得るには？</title>
		<link>https://fp-shima.ne.jp/2023/08/15/kakodata/</link>
					<comments>https://fp-shima.ne.jp/2023/08/15/kakodata/#respond</comments>
		
		<dc:creator><![CDATA[FPshima]]></dc:creator>
		<pubDate>Tue, 15 Aug 2023 04:54:59 +0000</pubDate>
				<category><![CDATA[pineスクリプト]]></category>
		<category><![CDATA[R]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[教育・子育て・スキルアップ]]></category>
		<category><![CDATA[過去データ]]></category>
		<guid isPermaLink="false">https://fp-shima.ne.jp/?p=3308</guid>

					<description><![CDATA[当サイトでは主にトレーディングビューで過去データを取ってきて扱っておりますが、10年単位で1分足のデータが欲しい場合などには向きません。 そういった場合に、主に使うのが まずは口座を開設する必要があります。 口座開設がまだの人はこちらからど…]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">当サイトでは主にトレーディングビューで過去データを取ってきて扱っておりますが、10年単位で1分足のデータが欲しい場合などには向きません。</p>



<p class="wp-block-paragraph">そういった場合に、主に使うのが<span class="sc_marker" style="background: linear-gradient(transparent 50%, #ffff66 50%);">FXTF</span>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www29.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www15.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""><a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="468" height="60" alt="" src="https://www27.a8.net/svt/bgt?aid=230128434770&wid=004&eno=01&mid=s00000022371001004000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www17.a8.net/0.gif?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" alt="">



<p class="wp-block-paragraph">まずは口座を開設する必要があります。</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6A4FM" rel="nofollow">口座開設がまだの人はこちらからどうぞ</a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6A4FM" alt="">



<p class="wp-block-paragraph">すでに、口座を持っている人はログインしてください</p>



<p class="wp-block-paragraph"></p>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="660" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist1-1024x660.png" alt="" class="wp-image-3309" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist1-1024x660.png 1024w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist1-300x193.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist1-150x97.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist1-768x495.png 768w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist1.png 1321w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">ログイン後、こちらの画面で矢印のチャートデータをクリック。</p>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="682" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist2-1024x682.png" alt="" class="wp-image-3310" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist2-1024x682.png 1024w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist2-300x200.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist2-150x100.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist2-768x512.png 768w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/hist2.png 1120w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">そうすると、こんな感じの通貨ペアを選ぶ画面に行けますので、こちらから過去データを取得してください。</p>



<p class="wp-block-paragraph">FXTFさんではMT4での過去データの扱い方も丁寧に教えてくれているので、ここでは割愛します。</p>



<a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">



<p class="wp-block-paragraph">R上で扱う分には1分足で十分ですが、加工された足を使いたい方はMT4を使って時間を変更し、エクスポートされたものを使うのも良いでしょう。</p>



<h2 class="wp-block-heading">おすすめFXアイテム</h2>



<p class="wp-block-paragraph">過去検証や分析はMT4かFT4、Trading viewがおすすめです。</p>



<p class="wp-block-paragraph">無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF</p>



<p class="wp-block-paragraph">ガチで過去検証をやりたい人はFT4、<a href="https://h.accesstrade.net/sp/cc?rk=0100kxwf00j59w"></a></p>



<p class="wp-block-paragraph">チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www28.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""> <a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913&amp;guid=ON"><img loading="lazy" decoding="async" width="300" height="250" style="border:none;" src="//image.moshimo.com/af-img/1739/000000030913.jpg"></a><img loading="lazy" decoding="async" width="1" height="1" style="border:none;" src="//i.moshimo.com/af/i/impression?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913"> <a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">
]]></content:encoded>
					
					<wfw:commentRss>https://fp-shima.ne.jp/2023/08/15/kakodata/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>PineとRでリピート系を最適化！</title>
		<link>https://fp-shima.ne.jp/2023/08/09/r003/</link>
					<comments>https://fp-shima.ne.jp/2023/08/09/r003/#respond</comments>
		
		<dc:creator><![CDATA[FPshima]]></dc:creator>
		<pubDate>Wed, 09 Aug 2023 09:29:00 +0000</pubDate>
				<category><![CDATA[pineスクリプト]]></category>
		<category><![CDATA[R]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[教育・子育て・スキルアップ]]></category>
		<guid isPermaLink="false">https://fp-shima.ne.jp/?p=3262</guid>

					<description><![CDATA[松井FXさんでリピート系が少額から出来るようになったことに対応して、トレーディングビューとRを駆使して最適っぽい解を考えてみるという回です トレーディングビューからデータを取得する！ 今回は月あたりの変動の幅、いわゆる「」に近い概念と、どの…]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">松井FXさんでリピート系が少額から出来るようになったことに対応して、トレーディングビューとRを駆使して最適っぽい解を考えてみるという回です</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="468" height="60" alt="" src="https://www27.a8.net/svt/bgt?aid=230128434770&wid=004&eno=01&mid=s00000022371001004000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www17.a8.net/0.gif?a8mat=3T0G8I+CQFUWA+4SM6+5Z6WX" alt="">



<h2 class="wp-block-heading">トレーディングビューからデータを取得する！</h2>



<p class="wp-block-paragraph">今回は月あたりの変動の幅、いわゆる「<span class="fontcolor" style="color:#ff3333;">ボラティリティ</span>」に近い概念と、どのあたりの価格帯で揉み合うのか、などを考えてみたいので、月足と、直近の5分足でデータ要約してみたいと思います。</p>



<p class="wp-block-paragraph">そこで、まずはデータを取ってくるわけですが、今回もトレーディングビューでデータをとってみましょう。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="499" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-1024x499.png" alt="" class="wp-image-3263" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-1024x499.png 1024w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-300x146.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-150x73.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-768x374.png 768w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev-1536x749.png 1536w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/tradev.png 1649w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">



<p class="wp-block-paragraph">ローソク足は、さかのぼれるだけさかのぼって、表示できないとこまで行くと、取得可能な全データを取り出せます。データはご自身の見たい通貨を選んでください。今回はこの記事では、<mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-blue-color">USDJPY</mark>を使っています。</p>



<p class="wp-block-paragraph">画面を、さかのぼり切った状態にして、緑矢印のところをクリックし、出てきたところからチャートデータのエクスポートを選択します。</p>



<p class="wp-block-paragraph">そうすると、日時形式はどうするか聞かれますが、今回は日時は特に使わないので、何でも良いです。エクスポートしましょう。</p>



<p class="wp-block-paragraph">そうすると、ダウンロードされます。</p>



<p class="wp-block-paragraph">ブラウザの右上にダウンロード完了！みたいなタブが出る人もいれば、何も出ない人もいると思いますが、その場合は「ダウンロード」というフォルダに収まっていると思います。開いてみましょう。</p>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="964" height="913" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/excel1.png" alt="" class="wp-image-3264" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/excel1.png 964w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/excel1-300x284.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/excel1-150x142.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/excel1-768x727.png 768w" sizes="auto, (max-width: 964px) 100vw, 964px" /></figure>



<p class="wp-block-paragraph">こちらはエクセルで開いていますが、PCによってはテキストファイルとして開かれると思います。</p>



<p class="wp-block-paragraph">そしたら、名称を適当なものにして「ドキュメント」に保存します。というのも、FP嶋のRstudioはドキュメントのファイルにアクセスするようになっているためです。Rで使うファイルが、ドキュメント以外のところを参照するような設定になっているなら、そちらのフォルダに移動しましょう。</p>



<p class="wp-block-paragraph">今回は月足データをFXmon.csv　5分足データをFX5.csvとしています。</p>



<h2 class="wp-block-heading">Rで解析</h2>



<p class="wp-block-paragraph">Rで以下のようにしてみましょう。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>data &lt;- read.csv(&quot;FXmon.csv&quot;)　# データを読み込む
vola &lt;- data$high - data$low　#　高値から安値を引く、つまり、月の値幅を計算
avevola &lt;- mean(vola)　#　平均値を計算します
varvola &lt;- var(vola)　#　分散を計算します
sdvola &lt;- sd(vola)　#　標準偏差を計算します
maxvola &lt;- max(vola)　#　値幅の最大値を取得します
minvola &lt;- min(vola)　#　値幅の最小値を取得します
sumvola &lt;- summary(vola)　#　データを要約してくれます
histvola &lt;- hist(vola,100,col = &quot;#ff00ff20&quot;)　#ヒストグラムを書きます。同時にいくつかのデータを格納します
</code></pre></div>



<p class="wp-block-paragraph">まずは月足のデータを見てみます。</p>



<p class="wp-block-paragraph">データを読み込むと、データフレームとしてdataに月足データが格納されます。</p>



<p class="wp-block-paragraph">データフレームは$マークを付けてやると、列ごとにデータを抽出できます。したがって、data$highは、dataという名前のデータフレームからhighと名前の付いた列をベクトルとして取り出します。</p>



<p class="wp-block-paragraph">ここでは、高値から安値を引いています。つまり、ひと月の最大値から最小値を引くことで、1か月の変化量がわかります。</p>



<p class="wp-block-paragraph">各変数を呼び出してみましょう</p>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="620" height="211" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymon08.png" alt="" class="wp-image-3265" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymon08.png 620w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymon08-300x102.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymon08-150x51.png 150w" sizes="auto, (max-width: 620px) 100vw, 620px" /></figure>



<p class="wp-block-paragraph">sumvolaの要約値と、各計算結果が同じ（厳密には四捨五入でちょっと違うけど）ですね。</p>



<p class="wp-block-paragraph">ただ、分散や、偏差はsummary関数ではわかりません。逆に、中央値、第一四分位、第三四分位はsummaryで簡単に出せます。</p>



<p class="wp-block-paragraph">平均値は全部の値を足して、個数で割った値として、広く知られていますが、中央値、四分位は意外と知られていません。</p>



<p class="wp-block-paragraph">中央値はデータを順番に並べて、真ん中に来る値。四分位は中央値で分けた上位と、下位の、さらに半分（データを並べた時に1/4、3/4の位置）に来る値です。</p>



<p class="wp-block-paragraph">平均したら、ひと月で、450pips動くという事ですね。並べてみた時の順位の中央は395pipsの変動があるよっという事。</p>



<p class="wp-block-paragraph">ちなみに最大でひと月に1500pipsも動くので、<span class="sc_marker" style="background: linear-gradient(transparent 50%, #ffff66 50%);">リピート系はこの動きに耐えられる必要があります</span>。　一方で、最小値は130pipsなので、利確設定はこれよりも小さいものにした方が良いでしょう。</p>



<p class="wp-block-paragraph">また、中央値から前後に最小値分動くと、概ね四分位点に来るので、130pipsというのは値幅として目安になるかもしれません。</p>



<p class="wp-block-paragraph">ただ、気を付けないといけないのは、データを取得した期間で、ドル円の最安値が75.562、最高値が151.946と、pipsの価値が倍位違うという点も忘れてはいけません。</p>



<p class="wp-block-paragraph">つまり、現在は140円付近なので、MAXに近いので、上方向に引っ張られていると言えます。したがって、最小の値動きは130pips程度ですが、<span class="sc_marker" style="background: linear-gradient(transparent 50%, #ffff66 50%);">その倍は動くと考えたほうが良いと思われます</span>。</p>



<p class="wp-block-paragraph">また、この考えをサポートするデータとして、標準偏差が約240pipsである点にも着目しましょう。</p>



<p class="wp-block-paragraph"><span class="sc_marker" style="background: linear-gradient(transparent 50%, #ffff66 50%);">データが正規分布する場合、平均値から±標準偏差内にデータの大体6割が集まっているとされています</span>



<p class="wp-block-paragraph">後ほど少し解説しますが、ヒストグラムを簡単に書くのはhist()　以下のような図が出ます。</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="668" height="503" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymonthvola202308.png" alt="" class="wp-image-3269" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymonthvola202308.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymonthvola202308-300x226.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymonthvola202308-150x113.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<p class="wp-block-paragraph">まぁどう見ても正規分布はしていません...</p>



<h3 class="wp-block-heading">直近の解析もしてみよう！</h3>



<a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">



<p class="wp-block-paragraph">次に直近の値動きについて見て行ってみましょう。5分足データを使っていて、5月からのデータが取得できました。執筆時点で概ね3か月分という事になります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>data &lt;- read.csv(&quot;FX5.csv&quot;)　#　読み込むデータをかえるだけで再利用！
vola &lt;- data$high - data$low
avevola &lt;- mean(vola)
varvola &lt;- var(vola)
sdvola &lt;- sd(vola)
maxvola &lt;- max(vola)
minvola &lt;- min(vola)
histvola &lt;- hist(vola,100,col = &quot;#ff00ff20&quot;,xlab = &quot;5min vola.&quot;,xlim = c(0,0.5))　#　最大値の関係で見づらいのでxlimで範囲を指定した
sumvola &lt;- summary(vola)</code></pre></div>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="774" height="69" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymon08_1.png" alt="" class="wp-image-3270" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymon08_1.png 774w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymon08_1-300x27.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymon08_1-150x13.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpymon08_1-768x68.png 768w" sizes="auto, (max-width: 774px) 100vw, 774px" /></figure>



<p class="wp-block-paragraph">sumvolaしか出していませんが、3~7pips程度動くのが5分足という事になりそうです。</p>



<p class="wp-block-paragraph">しかし、それにしても最大値、怖いですね…　</p>



<p class="wp-block-paragraph">まぁ指標というか、日銀の政策発表が、あいだにあったからだと思います。</p>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="668" height="503" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpy5minhist.png" alt="" class="wp-image-3271" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpy5minhist.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpy5minhist-300x226.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpy5minhist-150x113.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<p class="wp-block-paragraph">maxの250pipsが入らない様に、制限をかけています。X軸の範囲指定は<span class="sc_marker" style="background: linear-gradient(transparent 50%, #ffff66 50%);">xlim　=　c(最小値、最大値）</span>です。　まぁこちらも正規分布はしていませんが、マイナス方向に行かないので仕方ないと言えば仕方ないですね。</p>



<p class="wp-block-paragraph">次にもみ合う価格帯について考えてみたいと思います。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>data &lt;- read.csv(&quot;FX5.csv&quot;) #　5分足を読み込んでます
High &lt;- data$high　#　高値をHighに格納
Low &lt;- data$low　#　安値をLowに格納
seqlist &lt;- list()　#　これから使うseqlistという容器を生成
for (i in 1:length(High)) {
  seqlist[[i]] &lt;- round(seq(Low[i], High[i], by = 0.001),3)
}　#　for文で　seqlist内にデータをどんどん格納

h &lt;- unlist(seqlist)　#リスト形式をベクトル形式に戻す
hist &lt;- hist(h,5000,col = &quot;#00aaff40&quot;,border = NA,main = &quot;Histogram of 5min price&quot;,xlab = &quot;price&quot;)
#ヒストグラムを書く　境界線はナシにしました</code></pre></div>



<p class="wp-block-paragraph">コードについて補足説明をいくつか行います</p>



<div class="wp-block-dvaux-frame sc_frame_wrap inline"><div class="sc_frame_title inline" style="background-color:#2ac113">コードの解説</div><div class="sc_frame" style="background-color:#fff;border-color:#2ac113">
<ul class="wp-block-list">
<li>list()　:　Rのリストという形式を作る。中に入れるものは何でも良いという便利設計ですが、使いどころは意外と難しい</li>



<li>round():　四捨五入等を行える。業界的には「まるめる」という。roundだから。まるめる対象と、何桁でまるめるかを指定</li>



<li>for(){}：　繰り返し{}のプログラムを行う。回数は()内のin以降で指定。今回は「1:length（High）」なので、<span class="sc_marker" style="background: linear-gradient(transparent 50%, #ffff66 50%);">1からHighの長さ</span>（含まれるデータの数）。また、可変数を指定する必要があり、良く使われるのがi,j,k</li>



<li>length()　:()内のデータの長さを数える。行を数えるnrow、列を数えるncolなど、数えたいものによって使い分けが必要。</li>



<li>seq()：指定した範囲内を指定した値で分割してくれる。今回はLow[i]からHigh[i]の範囲をby　=　0.001ずつに分割している。指定した範囲のスタートとゴールの大小によってはby=以下を-にする必要がある場合もある。</li>



<li>unlist()　:　list要素をすべて取り出してベクトル化</li>



<li>hist()　:　データを入れるだけでヒストグラムを書いてくれます。分割する数(細かさ)や色、境界線の有無等、基本的なプロットの指定が出来ます。</li>
</ul>
</div></div>



<p class="wp-block-paragraph">今回「リスト」と呼ばれる形式を使用しています。データシートやベクトルをメモ用紙に書いたものと考えたら、リストはメモ用紙をまとめるバインダーのようなもの。</p>



<p class="wp-block-paragraph">何枚目のメモかを[[x]]で指定します。　さらに、そのページのどこを参照するかを［y］で指定します。</p>



<p class="wp-block-paragraph">つまり、list内の4つ目でそのデータの5番目のデータを呼び出したいときはlist名[[4]][5]と指定します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>&gt; seqlist[[4]][5]
[1] 136.24</code></pre></div>



<p class="wp-block-paragraph">今回はデータ数が少ないので、これまでに見てきたｃ()を使って格納するのでも良いのですが、ｃ()を使うと計算が遅くなる可能性があります。</p>



<p class="wp-block-paragraph">例えばこんな感じ　↓</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>a &lt;- 1
seqlist2 &lt;- c()
seqlist2 &lt;- c(seqlist2 , a)
seqlist2
[1] 1</code></pre></div>



<p class="wp-block-paragraph">このaに入る部分をfor文で変化させて足していくのでも良いのですが、seqlist2を毎回コピペしてその後ろにaを足すという作業なので、データ数が多くなると、だんだんコピペが遅くなり、非常に時間がかかるようになります。したがって、以下のように書き換えると少し早くなります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>a &lt;- 1
seqlist2 &lt;- c()
seqlist2[i] &lt;-  a
seqlist2
[1] 1</code></pre></div>



<p class="wp-block-paragraph">for文になっていませんので、ひとつしか入りませんが、例えば、aがベクトルでn個のデータを持ちi in 1:7のfor文であれば7番目まで格納できます。ベクトルのi番目に直接データを入れています。</p>



<p class="wp-block-paragraph">ただ、aが2つ以上のデータを持つ場合は工夫が必要で、(i番目なのに、データがi+αになっちゃうので、最初の1つ目のデータしか入らず、残りは上書きされていく)その工夫のひとつがlistの活用です。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>for (i in 1:length(High)) {
  seqlist[[i]] &lt;- round(seq(Low[i], High[i], by = 0.001),3)
}</code></pre></div>



<p class="wp-block-paragraph">このように書くと、seqlistのlist内の[[i]]番目に、roundで小数点以下3桁で丸められた、seqでLow[i]からHigh[i]までの区間を、0.001でm個に区切ったものを格納できます。便利。</p>



<p class="wp-block-paragraph">含まれたデータは長さの異なるベクトルがi個入っていますので、unlistでひとつにまとめます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>h &lt;- unlist(seqlist)</code></pre></div>



<p class="wp-block-paragraph">これで準備は完了です。</p>



<h2 class="wp-block-heading">簡単にヒストグラムを書く！</h2>



<p class="wp-block-paragraph">以前はggplotを使って書きましたが、実はヒストグラムは簡単にかけまして…　hist()で書けちゃいます。</p>



<p class="wp-block-paragraph">色々やる分にはggplotの方が良いですし、論文書きたいとかならなおさらggplotが良いですが、ちょっとした解析結果を見たいだけなら、hist()で十分。</p>



<p class="wp-block-paragraph">また、プログラム慣れしていただくためにも、いろいろ使うほうが良いという事で、今回はhist()つかってます</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>hist &lt;- hist(h,5000,col = &quot;#00aaff40&quot;,border = NA,main = &quot;Histogram of 5min price&quot;,xlab = &quot;price&quot;)
</code></pre></div>



<p class="wp-block-paragraph">hist()内でデータ、分割数、色（今回は#RRGGBB透明度で指定)　、境界線を指定しています。また、ラベルや、軸の範囲も指定できます。</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="668" height="503" src="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpy5minhistogram.png" alt="" class="wp-image-3272" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpy5minhistogram.png 668w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpy5minhistogram-300x226.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/08/usdjpy5minhistogram-150x113.png 150w" sizes="auto, (max-width: 668px) 100vw, 668px" /></figure>



<p class="wp-block-paragraph">さて、どうでしょうか…これは高安値に挟まれた価格が何回出現したか、つまり、何回その価格帯を通ったか、を示しています。すなわちもみ合う価格帯という事になりますね。</p>



<p class="wp-block-paragraph">反対に山が低かったり、谷になっているところはスーッと通り過ぎただけという事。つまり、山の両端（谷ってこと）を上限下限としてピーク付近で、もみ合うよ（もみ合ったよ）という事を示しています。</p>



<p class="wp-block-paragraph">そうみると、この3か月では139~140円の間で非常に多くの取引がなされていたと考えられるでしょう。</p>



<p class="wp-block-paragraph">また、このヒストグラムを見て、たくさん山があると思うのか、大きい山がひとつと、両側に2，3個山脈があるな~位にとらえるかで戦略が変わっていきますが、ひとつの節目は139~140であることは間違いないでしょう。</p>



<h3 class="wp-block-heading">リピート設定はどうする？</h3>



<p class="wp-block-paragraph">さて、ここまで見てきたことを振り返りましょう</p>



<div class="wp-block-dvaux-frame sc_frame_wrap inline"><div class="sc_frame_title inline" style="background-color:#70b8f1"></div><div class="sc_frame" style="background-color:#fff;border-color:#70b8f1">
<ul class="wp-block-list">
<li>月足は400pips前後動く</li>



<li>少なくても130pipsは動く</li>



<li>最大で1500pips動く</li>



<li>最ももみ合いそうなのは1ドル＝139~140円付近</li>
</ul>
</div></div>



<p class="wp-block-paragraph">また、ヒストグラムをみると、小さな山でも20pipsの値幅がありそうです。</p>



<p class="wp-block-paragraph">今回はリピート用にドル円の分析をRで行ってみました。</p>



<p class="wp-block-paragraph">これをもとに、松井FXのリピートショート設定を考えてみようと思います。</p>



<h2 class="wp-block-heading">おすすめFXアイテム</h2>



<p class="wp-block-paragraph">過去検証や分析はMT4かFT4、Trading viewがおすすめです。</p>



<p class="wp-block-paragraph">無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF</p>



<p class="wp-block-paragraph">ガチで過去検証をやりたい人はFT4、<a href="https://h.accesstrade.net/sp/cc?rk=0100kxwf00j59w"></a></p>



<p class="wp-block-paragraph">チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www28.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""> <a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913&amp;guid=ON"><img loading="lazy" decoding="async" width="300" height="250" style="border:none;" src="//image.moshimo.com/af-img/1739/000000030913.jpg"></a><img loading="lazy" decoding="async" width="1" height="1" style="border:none;" src="//i.moshimo.com/af/i/impression?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913"> <a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">
]]></content:encoded>
					
					<wfw:commentRss>https://fp-shima.ne.jp/2023/08/09/r003/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>PineとRでFXデータのグラフを見てみよう！</title>
		<link>https://fp-shima.ne.jp/2023/02/20/r002-2/</link>
					<comments>https://fp-shima.ne.jp/2023/02/20/r002-2/#respond</comments>
		
		<dc:creator><![CDATA[FPshima]]></dc:creator>
		<pubDate>Mon, 20 Feb 2023 06:13:27 +0000</pubDate>
				<category><![CDATA[pineスクリプト]]></category>
		<category><![CDATA[R]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[教育・子育て・スキルアップ]]></category>
		<guid isPermaLink="false">https://fp-shima.ne.jp/?p=3091</guid>

					<description><![CDATA[今回はtradingviewで過去データを取ってきて、それをRでグラフにしてみて傾向を見てみよう！という内容です まずはデータを取得しよう！ 今回は各通貨の時間的な変化の程度を見てみようと思います。つまり、ドル円はこの時間に動きやすく、オー…]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">今回はtradingviewで過去データを取ってきて、それをRでグラフにしてみて傾向を見てみよう！という内容です</p>



<a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">



<h2 class="wp-block-heading">まずはデータを取得しよう！</h2>



<p class="wp-block-paragraph">今回は各通貨の時間的な変化の程度を見てみようと思います。つまり、ドル円はこの時間に動きやすく、オーストラリアドルはこの時間に動きやすい…　といった事がわかるんじゃないかと思います。</p>



<p class="wp-block-paragraph">自分がトレードする時間帯に良く動く通貨を狙うと利益を上げやすくなりますね。</p>



<p class="wp-block-paragraph">では、まずはpineでデータを取ってきます。</p>



<p class="wp-block-paragraph">以下のようなプログラムを組みました</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="619" src="https://fp-shima.ne.jp/wp-content/uploads/2023/02/chart1-1024x619.png" alt="" class="wp-image-3092" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/02/chart1-1024x619.png 1024w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/chart1-300x181.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/chart1-150x91.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/chart1-768x464.png 768w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/chart1.png 1235w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>//@version=5
indicator(&quot;時間変動&quot;)
h = (hour + 14)%24 // 取引所と東京時間の誤差から日本時間に変更する
audv = high-low   // 高値と安値の差を取ることで変化の大きさを示す
usdv = request.security(&quot;OANDA:USDJPY&quot;,&quot;60&quot;,high) - request.security(&quot;OANDA:USDJPY&quot;,&quot;60&quot;,low) //　request.security関数で他の通貨ペアを指定 
eurv = request.security(&quot;OANDA:EURJPY&quot;,&quot;60&quot;,high) - request.security(&quot;OANDA:EURJPY&quot;,&quot;60&quot;,low)
plot(h,&quot;hour&quot;)
plot(audv,&quot;AUD&quot;)
plot(usdv,&quot;USD&quot;)
plot(eurv,&quot;EUR&quot;)</code></pre></div>



<p class="wp-block-paragraph">今回はオーストラリアドル、米ドル、ユーロをすべてクロス円で見ています　それぞれ大陸が違うという感じにしてみました。</p>



<p class="wp-block-paragraph">実際にデータを抜き出してきたものがこちら</p>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="681" height="760" src="https://fp-shima.ne.jp/wp-content/uploads/2023/02/audusdeur.png" alt="" class="wp-image-3093" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/02/audusdeur.png 681w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/audusdeur-269x300.png 269w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/audusdeur-134x150.png 134w" sizes="auto, (max-width: 681px) 100vw, 681px" /></figure>



<p class="wp-block-paragraph">CSVですがエクセルで開いています。一番上にデータがない状態のNaNがあるので、この行だけは削除しておきましょう</p>



<p class="wp-block-paragraph">また、普通にインストールしたRの場合データがドキュメントにあるとやりやすいので、ドキュメントにデータを保存し、かつ、わかりやすいようにファイル名を"<span class="sc_marker" style="background: linear-gradient(transparent 50%, #ffff66 50%);">fx.csv</span>"と変更しました。</p>



<a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">



<h2 class="wp-block-heading">Rで解析</h2>



<p class="wp-block-paragraph">今回は出てきたデータを時間ごとにまとめて、それをグラフに書いてみようと思います</p>



<p class="wp-block-paragraph">以下のようなコードで進めていきます。　ただ、プログラム初心者にはところどころわからないところが出るかもしれませんが、雰囲気で感じ取ってください。　扱っているうちにどういう意味か分かるようになっていきます。まずはやってみようの精神</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>data &lt;- read.csv(&quot;fx.csv&quot;)　# dataという変数に　fx.csvというcsvファイルを読み込む
avedata &lt;- aggregate(x=data[c(&quot;AUD&quot;,&quot;USD&quot;,&quot;EUR&quot;)],by = list(data$hour),FUN = mean)　#　avedataにaggregateの計算結果を入れる
#　aggregate()は(x=データ、by=まとめる項目、FUN＝　機能)
avedata　#　計算結果を表示</code></pre></div>



<p class="wp-block-paragraph">dataにはいくつかのデータ列がありますが項目名がついています。c()はベクトルとして扱うコード””で囲まれた記号等は文字列として扱われます。したがって、c("AUD","USD","EUR")をdata[]内に表記すると、dataのAUD,USD,EURを取り出せます。</p>



<p class="wp-block-paragraph">また、list()というのは様々なデータ構造を入れることのできる関数なのですが、by=に求められている構造がlist型なので、用いています　変数に対して$を付けると、列が抽出できます　したがって、ここではbyにhour列を抽出しています　</p>



<p class="wp-block-paragraph">FUNはfunctionの略で今回はmean(平均)を調べています。</p>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="409" height="422" src="https://fp-shima.ne.jp/wp-content/uploads/2023/02/avedata.png" alt="" class="wp-image-3094" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/02/avedata.png 409w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/avedata-291x300.png 291w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/avedata-145x150.png 145w" sizes="auto, (max-width: 409px) 100vw, 409px" /></figure>



<p class="wp-block-paragraph">このような計算結果が出ていればOKです。</p>



<p class="wp-block-paragraph">今回の記述方法ではhourでまとめましたが、Group.1と変更されてしまいました。そこで、hourに直しておきます</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code> colnames(avedata)&lt;-c(&quot;hour&quot;,&quot;AUD&quot;,&quot;USD&quot;,&quot;EUR&quot;)</code></pre></div>



<p class="wp-block-paragraph">面倒ですが、全項目に名前を付けます。</p>



<p class="wp-block-paragraph">また、以下のように記述すると、名前を変更しなくてもGroup.1ではなくhourにできます。</p>



<p class="wp-block-paragraph">いろいろなやり方があるよってことを通じてプログラミングに慣れて頂けたら…</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>avedata &lt;- aggregate(cbind(AUD,USD,EUR) ~ hour,data,mean)</code></pre></div>



<h2 class="wp-block-heading">ggplot2でグラフ化してみよう！</h2>



<p class="wp-block-paragraph">次にこのデータをグラフ化していきます。</p>



<p class="wp-block-paragraph">Rにもとから入っているグラフでも良いのですが、様々なデータを書く上ではggplot2のようなパッケージを使う方が後々楽なので、導入していきます。　</p>



<p class="wp-block-paragraph">まずはパッケージをインストールしましょう</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code> install.packages(&quot;ggplot2&quot;)</code></pre></div>



<p class="wp-block-paragraph">これでパッケージがインストールされます。ちなみにtidyverseをインストールする際に一緒にダウンロードされてくるので、以前の記事でtidyverseしている人は改めて入力する必要はありません</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>library(ggplot2)</code></pre></div>



<p class="wp-block-paragraph">これで準備は完了です。</p>



<h2 class="wp-block-heading">ggplot2の使い方</h2>



<p class="wp-block-paragraph">ggplot2はグラフィックに必要な要素をいくつかに分けて記述します</p>



<div class="wp-block-dvaux-frame sc_frame_wrap inframe"><div class="sc_frame_title inframe" style="background-color:#2ac113">ggplot2の基本</div><div class="sc_frame" style="background-color:#fff;border-color:#2ac113">
<p class="wp-block-paragraph">データを入れる</p>



<p class="wp-block-paragraph">描画のレイヤーを作る</p>



<p class="wp-block-paragraph">スケールを決める</p>



<p class="wp-block-paragraph">テーマ</p>



<p class="wp-block-paragraph">その他</p>
</div></div>



<p class="wp-block-paragraph">ざっくりこんな感じです。　今回はデータは"avedata"を使っていきます。</p>



<p class="wp-block-paragraph">まずはデータを記述する枠を作ってみましょう</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code> fxgraph &lt;- ggplot(data = avedata,mapping = aes( x = hour, y = USD))
 fxgraph</code></pre></div>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="536" height="483" src="https://fp-shima.ne.jp/wp-content/uploads/2023/02/graphmoto1.png" alt="" class="wp-image-3095" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/02/graphmoto1.png 536w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/graphmoto1-300x270.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/graphmoto1-150x135.png 150w" sizes="auto, (max-width: 536px) 100vw, 536px" /></figure>



<p class="wp-block-paragraph">こんな感じのグラフのキャンバスが出来ていればOKです</p>



<p class="wp-block-paragraph">次にどんなグラフを作るのかっていうのを決めていきます。今回はバーグラフを作りたいのでgeom_barを使います　他にも</p>



<div class="wp-block-dvaux-frame sc_frame_wrap normal"><div class="sc_frame_title normal" style="background-color:#70b8f1">geomシリーズ</div><div class="sc_frame" style="background-color:#fff;border-color:#70b8f1">
<p class="wp-block-paragraph">geom_point　散布図</p>



<p class="wp-block-paragraph">geom_line　線グラフ</p>



<p class="wp-block-paragraph">geom_smooth　線形回帰</p>



<p class="wp-block-paragraph">geom_histgram　ヒストグラム</p>



<p class="wp-block-paragraph">geom_polygon　ポリゴングラフ</p>



<p class="wp-block-paragraph">geom_map　地図グラフ</p>



<p class="wp-block-paragraph">geom_dotplot　ドットグラフ</p>



<p class="wp-block-paragraph">等</p>
</div></div>



<p class="wp-block-paragraph">ggplot2では　+　記号を用いてこのキャンバスに色々なグラフやテキストを乗せていくイメージです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>fxgraph2 &lt;-  fxgraph + geom_bar(stat = &quot;identity&quot;) #  バーグラフをstat=&quot;identity&quot;でそのままの値を用いることを宣言
fxgraph2</code></pre></div>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="526" height="485" src="https://fp-shima.ne.jp/wp-content/uploads/2023/02/USDtime.png" alt="" class="wp-image-3096" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/02/USDtime.png 526w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/USDtime-300x277.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/USDtime-150x138.png 150w" sizes="auto, (max-width: 526px) 100vw, 526px" /></figure>



<p class="wp-block-paragraph">同様にして、AUD,EURのグラフも出してみましょう</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-cpp" data-lang="C++"><code>fxgrapha &lt;- ggplot(data = avedata,mapping = aes( x = hour, y = AUD)) +
   geom_bar(stat = &quot;identity&quot;) 
fxgraphe &lt;- ggplot(data = avedata,mapping = aes( x = hour, y = EUR)) +
   geom_bar(stat = &quot;identity&quot;) 
fxgrapha
fxgraphe</code></pre></div>



<p class="wp-block-paragraph">別々にグラフは出てきますが、並べてみました</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="322" src="https://fp-shima.ne.jp/wp-content/uploads/2023/02/timevol-1024x322.png" alt="" class="wp-image-3097" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/02/timevol-1024x322.png 1024w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/timevol-300x94.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/timevol-150x47.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/timevol-768x242.png 768w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/timevol-1536x483.png 1536w, https://fp-shima.ne.jp/wp-content/uploads/2023/02/timevol-2048x644.png 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">こうしてみると、基本的に良く動く時間というのは10時　16-17時　22-24時頃だという事がわかりますね。</p>



<p class="wp-block-paragraph">ただ、AUDは比較的10時頃が活発で、ユーロは夕方と深夜　米ドルは深夜により動くこともわかりますね。</p>



<h2 class="wp-block-heading">おすすめFXアイテム</h2>



<p class="wp-block-paragraph">過去検証や分析はMT4かFT4、Trading viewがおすすめです。</p>



<p class="wp-block-paragraph">無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF</p>



<p class="wp-block-paragraph">ガチで過去検証をやりたい人はFT4、<a href="https://h.accesstrade.net/sp/cc?rk=0100kxwf00j59w"></a></p>



<p class="wp-block-paragraph">チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www28.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""> <a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913&amp;guid=ON"><img loading="lazy" decoding="async" width="300" height="250" style="border:none;" src="//image.moshimo.com/af-img/1739/000000030913.jpg"></a><img loading="lazy" decoding="async" width="1" height="1" style="border:none;" src="//i.moshimo.com/af/i/impression?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913"> <a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">
]]></content:encoded>
					
					<wfw:commentRss>https://fp-shima.ne.jp/2023/02/20/r002-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Rを使うならまずはパッケージのインストールの仕方から</title>
		<link>https://fp-shima.ne.jp/2023/01/25/r002/</link>
					<comments>https://fp-shima.ne.jp/2023/01/25/r002/#respond</comments>
		
		<dc:creator><![CDATA[FPshima]]></dc:creator>
		<pubDate>Wed, 25 Jan 2023 08:19:44 +0000</pubDate>
				<category><![CDATA[R]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[教育・子育て・スキルアップ]]></category>
		<guid isPermaLink="false">https://fp-shima.ne.jp/?p=3037</guid>

					<description><![CDATA[今回は統計解析のフリーソフト　Rについて様々な解析を行うための第一歩パッケージのインストールについて紹介します！ パッケージとは Rは統計解析用のソフトです。 計算は様々なものがありますよね？四則演算、微分積分、行列、複素数、三角関数、確率…]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">今回は統計解析のフリーソフト　Rについて様々な解析を行うための第一歩パッケージのインストールについて紹介します！</p>



<a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">



<h2 class="has-text-align-center wp-block-heading" id="複数インジケーターの価値">パッケージとは</h2>



<p class="wp-block-paragraph">Rは統計解析用のソフトです。</p>



<p class="wp-block-paragraph">計算は様々なものがありますよね？四則演算、微分積分、行列、複素数、三角関数、確率…また、そういったものを複数組み合わせた計算群ともいえるものが存在します。</p>



<p class="wp-block-paragraph">理系で有名どころならｔ-検定とかでしょうか、これは確率分布や正規性などといったものから平均値に差があるかどうかを検出します。大学　学部レベルだと実験群を比較してｔ-検定するだけで良くて　それならエクセルでも十分です。</p>



<p class="wp-block-paragraph">ただ、例えば回帰分析　こういったものもエクセルで可能ですが、変数が複数になってくると難しくなります。</p>



<p class="wp-block-paragraph">そういったときにRを使うようになるのですが、Rでも基本的な演算は出来ますが、演算を複数組み合わせた検定など、元のソフトウェアにない機能もあります(基本的なものは入っています)。</p>



<p class="wp-block-paragraph">もちろん、原理がわかっていれば、ひとつずつ計算して答えを求めることが出来ます。しかし、その手間を省いてくれるのが<span class="fontcolor" style="color:#ff3333;">パッケージ</span>です。　例えば、標準誤差を知りたいとき、平均を求めて、分散を求めて、標準偏差を求めて～と順にやるのが通常の計算ですが、プログラム的には標準誤差を一発で計算できる関数があれば求められたりします。この関数が元のRに組み込まれていない場合は作る必要があって、すでに誰かが作ってくれたものを利用できるのが<span class="fontcolor" style="color:#ff3333;">パッケージ</span>



<p class="wp-block-paragraph">つまり、機械学習を行いたいなっと思ったら、データを読み込んで、そのデータ同士の相関を取って～っと色々やっていく必要が出ますが、パッケージを導入すれば○○○（data,～,xxxx）みたいなプログラムを打つことでいきなり計算させることが出来たりします。　</p>



<p class="wp-block-paragraph">自分が使いたい解析に合わせたパッケージを導入することでRは出来ることが増えていきます。</p>



<p class="wp-block-paragraph">パッケージはどんどんと後から増えますので、今できなくても今後できるようになっていくかもしれないという拡張性を秘めているともいえるでしょう。</p>



<a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">



<div class="wp-block-dvaux-frame sc_frame_wrap onframe"><div class="sc_frame_title onframe" style="color:#2ac113;background-color:#fff">今回の流れ</div><div class="sc_frame" style="background-color:#fff;border-color:#2ac113">
<ul class="wp-block-list">
<li>Rのパッケージのインストール手順</li>



<li>パッケージのインストール手順2</li>



<li>ちょっと試してみる</li>
</ul>
</div></div>



<h2 class="wp-block-heading">Rのパッケージのインストール手順</h2>



<p class="wp-block-paragraph">まず、Rstudioを起動します　下図のtoolsから　install　packagesを選びます</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="771" src="https://fp-shima.ne.jp/wp-content/uploads/2023/01/pack1-1-1024x771.png" alt="" class="wp-image-3043" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/01/pack1-1-1024x771.png 1024w, https://fp-shima.ne.jp/wp-content/uploads/2023/01/pack1-1-300x226.png 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/01/pack1-1-150x113.png 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/01/pack1-1-768x578.png 768w, https://fp-shima.ne.jp/wp-content/uploads/2023/01/pack1-1.png 1186w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">その後以下のような画面に変わります</p>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="776" src="https://fp-shima.ne.jp/wp-content/uploads/2023/01/rpack1-1024x776.jpg" alt="" class="wp-image-3038" srcset="https://fp-shima.ne.jp/wp-content/uploads/2023/01/rpack1-1024x776.jpg 1024w, https://fp-shima.ne.jp/wp-content/uploads/2023/01/rpack1-300x227.jpg 300w, https://fp-shima.ne.jp/wp-content/uploads/2023/01/rpack1-150x114.jpg 150w, https://fp-shima.ne.jp/wp-content/uploads/2023/01/rpack1-768x582.jpg 768w, https://fp-shima.ne.jp/wp-content/uploads/2023/01/rpack1.jpg 1177w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">そうするとどんなパッケージをインストールするかと聞かれるので、真ん中の欄にインストールしたいパッケージの名称を入れます。　今回は「<span class="sc_marker" style="background: linear-gradient(transparent 50%, #ffff66 50%);">tidyverse</span>」にしました。</p>



<p class="wp-block-paragraph">その後Installを押せばOK</p>



<h2 class="wp-block-heading">Rのパッケージのインストール手順2</h2>



<p class="wp-block-paragraph">上の手順でやった人はわかると思いますが、installボタンを押すと、プログラムが書かれて実行されます。</p>



<p class="wp-block-paragraph">したがって、<span class="sc_marker" style="background: linear-gradient(transparent 50%, #ffff66 50%);">プログラムを直接書いても良いわけです</span>。　やってみましょう</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-c" data-lang="C"><code>install.packages(&quot;tidyverse&quot;)　#　パッケージをインストールするコード</code></pre></div>



<p class="wp-block-paragraph">簡単ですね。</p>



<h2 class="wp-block-heading">試してみる</h2>



<p class="wp-block-paragraph">パッケージはインストールしただけでは機能しません。使えるようにR上に呼び出す必要があります。</p>



<p class="wp-block-paragraph">この作業はRを立ち上げるたびに必要です。</p>



<p class="wp-block-paragraph">呼び出してみましょう</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-c" data-lang="C"><code>library(tidyverse)　#　パッケージを呼び出すコード</code></pre></div>



<p class="wp-block-paragraph">簡単ですね。　</p>



<p class="wp-block-paragraph">コピペでやる人が多いかもしれませんが、Rstudioでは予測変換的な機能で、3文字打つとそれに該当する関数が候補として出てきます。候補を選んでEnterを押せば入力されるので便利です。　活用しましょう</p>



<p class="wp-block-paragraph">今回であれば「lib」まで打つといくつかの候補が出てくると思います。「libr」まで打ってEnterを押せば「library（）」が入力されると思います。</p>



<p class="wp-block-paragraph">さらにカーソルは便利なことに（）の間に移動されてます。そこで「tid」まで打てば「tidyverse」が候補に挙がると思います。（ダウンロードされたパッケージの数によってはいくつか候補が出ると思います。矢印で選べます）</p>



<p class="wp-block-paragraph">したがって、コピペをしなくても簡単に入力が出来るようサポートされています。</p>



<p class="wp-block-paragraph">今後色々と解析についても書いていこうと思います</p>



<p class="wp-block-paragraph">では今回はこのへんで！</p>



<h2 class="wp-block-heading">おすすめFXアイテム</h2>



<p class="wp-block-paragraph">過去検証や分析はMT4かFT4、Trading viewがおすすめです。</p>



<p class="wp-block-paragraph">無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF</p>



<p class="wp-block-paragraph">ガチで過去検証をやりたい人はFT4、<a href="https://h.accesstrade.net/sp/cc?rk=0100kxwf00j59w"></a></p>



<p class="wp-block-paragraph">チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります</p>



<a href="https://px.a8.net/svt/ejp?a8mat=3T0G8I+D15NSA+48D0+6AC5D" rel="nofollow">
<img loading="lazy" decoding="async" border="0" width="728" height="90" alt="" src="https://www28.a8.net/svt/bgt?aid=230128434788&wid=004&eno=01&mid=s00000019746001056000&mc=1"></a>
<img loading="lazy" decoding="async" border="0" width="1" height="1" src="https://www18.a8.net/0.gif?a8mat=3T0G8I+D15NSA+48D0+6AC5D" alt=""> <a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913&amp;guid=ON"><img loading="lazy" decoding="async" width="300" height="250" style="border:none;" src="//image.moshimo.com/af-img/1739/000000030913.jpg"></a><img loading="lazy" decoding="async" width="1" height="1" style="border:none;" src="//i.moshimo.com/af/i/impression?a_id=1717521&amp;p_id=2360&amp;pc_id=5104&amp;pl_id=30913"> <a rel="noopener noreferrer" href="https://tradingview.go2cloud.org/aff_c?offer_id=2&amp;aff_id=20855&amp;file_id=292" target="_blank"><img loading="lazy" decoding="async" width="728" height="90" border="0" src="https://media.go2speed.org/brand/files/tradingview/2/728x90.jpg"></a><img loading="lazy" decoding="async" width="0" height="0" border="0" style="position:absolute;visibility:hidden;" src="https://tradingview.go2cloud.org/aff_i?offer_id=2&amp;file_id=292&amp;aff_id=20855">
]]></content:encoded>
					
					<wfw:commentRss>https://fp-shima.ne.jp/2023/01/25/r002/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
