モーリーのメモ

アプリ開発等(プログラミング、CG作成)、興味を持ったことを実践してまとめるブログです。

モーリーのメモ

HTMLテーブルタグをGoogleスプレッドシートで作る!(改良版)

今回は『Googleスプレッドシート』で表を作って

    f:id:mmorley:20191219200854p:plain
 ぽちっとすると
    f:id:mmorley:20191217223409p:plain
 HTMLのテーブルタグを作成できるようにします。
    f:id:mmorley:20191219200723p:plain:w550
 テーブルタグを記事に貼るとこんな感じです。
    グループ名前産地個数
    果物りんご青森6
    みかん
    (温州)
    和歌山2
    愛媛2
    野菜たまねぎ北海道12
 
 出来ることは以下のとおりです。
  • セルの結合を反映します。
  • 太字のセルを見出しセル(thタグ)にします。
  • 文字の色を再現します。
  • セルの背景色を反映します。※見出しセルは除きます。
  • 縦および横方向の文字寄せを反映します。
  • セル内の改行を反映します。
 
 下記の記事の改良版なのですが、一番の違いはセルの結合の自動判別です。 以前は『結合あり』を選ぶと、
    f:id:mmorley:20191217172303p:plain
 同じ文字が入ったセルを結合するというものでした。
    f:id:mmorley:20191217225235p:plain
 他にはセルの背景色を再現するようにしたため、通常セルと見出しセルの設定方法を変更しました。
  • 以前:背景色が白い外のセルを見出しセルにする
  • 今回:文字が太字のセルを見出しセルにする
 
 完全ではないですが、以前より『Googleスプレッドシート』で見たままに近いテーブルタグを作れるようになりました。
 
 それでは作り方を説明します。

続きを読む

『Backtrader』でFXのバックテストをする!:Python

【 今回やること! 】

 
 下記の記事で少し触れたのですが、"最初に使おうとしたライブラリ"が『Backtrader』です。 
 『Backtrader』に興味を持ったのは『OANDA API』に対応しているという情報を見たからです。『OANDA API』は、テストではなく実際にFXの自動売買システムを作るためのライブラリです。まだ売買システムも出来ていないので先を見すぎですが、どうせならと思いました。
 ※今回はバックテストに関する部分だけで『OANDA API』に絡む部分は触れていません。
 
 ですが『Backtrader』ドキュメントを見るとハードルが高そうだったので、結局先にシンプルそうな『Backtesting.py』を試しました。今回『Backtrader』のドキュメントを読み返すと、共通点があるので以前より理解しやすくなっていました。最初難しく感じたのは、私がバックテストの流れも何も分かっていなかったせいなので、ある程度知識がある方なら最初から『Backtrader』で大丈夫だと思います。
 
 『Backtrader』は『Backtesting.py』に比べるとインジケータの種類が多いところが良いです。インジケータとは為替データに様々な計算を加えて、売買のタイミングの目安となる数値を算出するものです。
 また『Backtesting.py』は取引量を設定出来ませんが、『Backtrader』は設定できます。
 
 英語ですがコミュニティサイトがあるのも『Backtrader』の良いところです。私はGoogle翻訳頼みですが参考になります。
 
 『Jupyter Notebook』で『Backtrader』を使ってバックテストをする方法を説明します。

続きを読む

『Anaconda』のインストール→環境構築をしてプログラムを実行する!:Python

【 今回やること! 】

  • 『Anaconda(アナコンダ)』をインストールします。
  • 『Anaconda』でPythonの開発環境を構築します。
    • プログラムの作成と実行が出来る『Jupyter Notebook』をインストールします。
  • 『Jupyter Notebook』でPythonのプログラムを実行します。
 
 『Anaconda』はPythonの開発環境を簡単に構築するためのパッケージです。
 
 ここでいう開発環境とは、Python本体・ライブラリ・コードエディタ・実行環境のセットです。それぞれバージョンや種類を自由に組み合わせて環境を構築することが出来ます。
 
 Pythonのエディタとして有名な『Jupyter Notebook(ジュピター ノートブック)』も、『Anaconda』のパッケージに含まれています。『Jupyter Notebook』はドキュメント・コード・実行結果をまとめて編集出来るエディタです。『Google Colaboratory』は『Jupyter Notebook』を元に作られているそうです。
 
 これまで『Google Colaboratory』をメインで使っていましたが、やはり環境がリセットされてしまうのがネックです。また元から入っているライブラリは、Googleが知らぬ間にバージョンを変更する可能性があります。なので自分で管理出来るローカル環境を作成したいと思いました。
 
 『Anaconda』を使ってPythonのローカル環境を作成し、プログラムを実行するまでの手順を説明します。

続きを読む

『Backtesting.py』でFXのバックテストをする!:Python

【 今回やること! 】

  • Pythonのライブラリの『Backtesting.py』を使って、FXのバックテストを行います。
    • プログラムの作成と実行は『Google Colaboratory』で行います。
       『Google Colaboratory』は手持ちのPCの性能に関わらず、高速でPythonプログラムが動かせる無料の環境です。
 
 『Backtesting.py』を使ってバックテストをする方法についてまとめました。
 自動売買システムをヒストリカルデータ(過去の相場データ)で試します。
 
 ライブラリを使うことで、最低限必要な機能がそろったバックテストプログラムが楽に作れます。
 FXの知識が浅い私にとっては、ライブラリの仕様を見ることがバックテストの評価方法や指標の種類を知るきっかけになっています。
 
 最初に別のライブラリを使おうとしたのですが、私の知識が足りなすぎて分かりづらかったため、比較的簡単という情報があった『Backtesting.py』を使ってみました。
 
 『Backtesting.py』は、ヒストリカルデータを設定して、バックテストを実行し、分析結果を見るというバックテストの基本的な部分が、シンプルに出来ていると思います。結果が簡単に一覧表示できるのも分かりやすいです。

続きを読む

FXのヒストリカルデータから指定した期間を抽出する!:Python

【 今回やること! 】

  • FXの1分足のヒストリカルデータ(CSV形式)から指定した期間のデータを抽出して別のCSVファイルに保存します。
    • 実行環境は『Google Colaboratory』を使用します。

 
 
 こちらの記事で、FXのヒストリカルデータを入手しました。

 
 入手したヒストリカルデータは、2005年1月10日 2時31分から現在までの1分足のデータなので、かなり膨大な行数(540万行超)です。ファイルサイズは約275MBあります。
 
 大きすぎて扱いが大変なので、指定した期間のデータを抽出して別のCSVファイルにします。
 
 それでは作業を開始します!

続きを読む

FXのヒストリカルデータを無料で手に入れてHSTからCSVに変換する!:Python

【 今回やること! 】

  • FXの1分足のヒストリカルデータ(為替の過去の値動きのデータ)をCSV形式で入手します。
    • Google Colaboratory』を使用します。
    • ヒストリカルデータをダウンロード→解凍→CSVに変換するプログラムを実行します。
    • Google ドライブ』から、csvファイルをダウンロードします。
 
 ヒストリカルデータは、FXDDから入手します。ZIP圧縮されたHSTファイルをダウンロード出来ます。無料で登録も必要ありません。
 
 HST形式のファイルはMT4(MetaTrader4)で利用できますが、扱いやすいようにCSV形式に変換します。
 
 『ダウンロード→解凍→CSVに変換』するプログラムは、『Google Colaboratory』で作成して実行します。
 
 Google Colaboratory』は、サーバー上でPythonのプログラムを実行できる環境です。
 Googleアカウントがあれば(Gmail等使っていれば)、無料ですぐに利用出来ます。
 手元のPCの性能が低くても、サーバー側で処理されるので高速です。
 
 ただし、制約があります。
 
 『Google Colaboratory』を使うと、利用者には実行環境が割り当てられます。利用者は『ノートブック』というエディタを通じて実行環境を操作しますが、この『ノートブック』がアクティブでない状態が90分間続くと実行環境がリセットされます。また、使い続けていても12時間経つとリセットされます。
 
 リセットされると、実行環境に追加したファイルがすべて削除されます。
 なので、使用するデータや成果物は『Google ドライブ』に置くようにします。
 
 Google ドライブ』に置いたデータは消えません。自分のPCにダウンロードすることも出来ます。
 
 前置きが長くなりましたが、作業はサクッと出来ます。
 それでは作業を開始します!

続きを読む

顔のモデリングの超詳細手順 その8(完) 髪を作る!:Blender

 人型の3Dキャラクターの顔をモデリングします。
 

 ↑の記事の続きです。
 
 今回は、髪を作ります。顔のモデリングの最後の作業です。
 
 それでは作成を開始します!
 
 ◆ このシリーズの目次 ◆
 
*図は、クリックすると拡大表示されます。
Macのキー操作で書いています。Windowsの方は以下のように変換して下さい。
 Mac[Window]キー対応:option[alt]、control[ctrl]、command [windows]

続きを読む