用語集

用語この本での意味
ローソク足ある期間の始値、高値、安値、終値、出来高をまとめたデータ
時間足1日など、ローソク足1本が表す時間の単位
OHLCVOpen、High、Low、Close、Volumeという5つの基本データ
価格チャートデータを時間順に表示するグラフ
指標データから値を求め、表示するプログラム
ストラテジーシミュレーターへ注文ルールも渡すプログラム
バックテスト指定した実行モデルで、過去のデータを使ってストラテジーを動かすこと
変数プログラムが値を結び付ける名前
型数値、論理値、配列など、値や変数の種類
UDT関連する複数のデータを持つユーザー定義型
オブジェクト独自のフィールド値を保存する、型の具体的なインスタンス
フィールドオブジェクトに属する、名前で参照できるデータ
メソッド特定の型に対応する操作
関数呼び出し可能な、名前の付いた操作や計算
パラメーター関数定義で指定する入力の名前(仮引数)
引数呼び出しでパラメーターに渡す値(実引数)
入力利用者が変更できるプログラムの入力
スコープコードの中で、その名前を参照できる範囲
履歴過去のローソク足や、状態を持つ関数の前の実行に対応する値
状態次の実行のために保持するデータ
Series過去のローソク足の値を履歴として参照できるよう保持する変数の注釈
Persistent一度だけ初期化され、保存した値をローソク足の間で引き継ぐ変数の注釈
na欠損していて利用できない値
SMA単純移動平均
EMA指数移動平均
ウォームアップ計算に必要な初期データがそろうまでの期間
クロス2つの値の大小関係が、定められた方向に入れ替わること
ブレークポイントデバッガーが実行を停止できるコード上の位置
tick市場の最小価格刻み
スリッページモデル内で約定価格を不利な方向へずらす価格差
注文バックテストのシミュレーターに売買を指示するもの。注文を出しただけでは約定したことにはならない
約定指定の価格と数量で、注文の全部または一部が実行されること
手数料約定に対して課され、バックテストのコストに含まれる取引費用
ポイント価値取引対象を一単位保有したとき、価格が一単位動くことに対応する金額
ロングコストを考慮する前の損益が、価格の上昇で利益、下落で損失となるポジション
ポジションエントリーの約定後に保有する建玉
エクイティ未決済ポジションの評価を含めた口座資産
ドローダウン資産の過去の高値からの下落

書き方の早見表

目的コード
現在の終値close
前のローソク足の終値close[1]
自分の計算に履歴を持たせるvalue: Series[float] = ...
足の間で保持するカウンターcount: Persistent[int] = 0
欠損を調べるna(value)
5本の単純移動平均ta.sma(close, 5)
上抜けta.crossover(first, second)
条件付きの操作if condition:
2つの値を選ぶfirst if condition else second
0から4で5回繰り返すfor index in range(5):
配列の末尾に追加するarray.push(values, value)
ロングのエントリー注文strategy.entry("Long", strategy.long)
名前で指定したエントリーの成行決済strategy.close("Long")
距離でストップと目標を指定するstrategy.exit("Exit", "Long", loss=100, profit=200)

表はコードの断片で、完全なプログラムではありません。ファイル全体とインポートは、対応する章とサンプルパッケージにあります。

PyneIDEの操作

目的操作する場所
プロジェクトを作るPyneIDEメニュー → Initialize Pyne Project
実行環境を設定するPyneIDEメニュー → Setup Environment
実行するコード上部のRun Pyne code
入力を編集する右上の**Edit Inputs…**の歯車
デバッグを開始するコード上部のDebug
次のローソク足へ進むデバッグのフローティングツールバーのNext Bar
指定した足へ進むデバッグのフローティングツールバーのRun to Bar…
取引結果を見るチャート下部のTrades
資産曲線を見るチャート下部のPerformance
詳細な統計を見るチャート下部のStats
ストラテジーを設定するStrategy properties、次にProperties
描画した値を書き出すチャートのツールバーのOpen plot output CSV
取引を書き出すチャートのツールバーのOpen trades output CSV

詳細なドキュメント

関数の全引数や、その他の型はPyneCoreのドキュメントにあります。本の例題とともに、次の節を参照できます。

知らない呼び出しは、まず入力の型、結果の型、履歴や状態の扱いを調べます。その後、手で結果を追える小さなプログラムで試してください。