マガジンのカバー画像

Pythonでテクニカル分析を算出する関数

6
Pythonでテクニカル分析を算出するための関数についてまとめています。
運営しているクリエイター

#テクニカル分析

PythonでRSI(Relative Strength Index)を算出する

RSI(Relative Strength Index)とはRSIは、算出期間における変動幅のうち上昇幅の占める割合を表したテクニカル指標です。 割合という表現のとおり、オシレーター系の指標です。 数式で表すと次のようになります。 RSI = 期間平均上昇幅 ÷ (期間平均上昇幅 + 期間平均下落幅) × 100 オシレーター系の指標に共通することとして、数式からも分かるように、上昇や下落が続くような状況では100や0に近い値が連続します。 どのテクニカル指標にも言え

PythonでMACD(Moving Average Convergence/Divergence)を算出する

MACD(Moving Average Convergence/Divergence)とはMACDは算出期間の異なる2つの指数平滑移動平均(以下、EMA)の位置関係を表したテクニカル指標です。 MACDは、短期EMAと長期EMAの差です。数式で表すと「短期EMA-長期EMA」です。 MACDのシグナルは、MACDの移動平均です。 MACDのヒストグラムは、MACDとMACDのシグナルの差です。 MACDは、短期EMAと長期EMAのどちらが上にあるのかによってトレンドを判断

¥200

Python でモメンタム(Momentum)を算出する

モメンタム(Momentum)とはモメンタムは現在の値と指定期間前の値の差です。 現在と過去の値の差から値動きの勢いを把握します。 例えば、次のような活用法があります。 モメンタムが+であれば上昇トレンドと判断 モメンタムが-であれば下落トレンドと判断 売買シグナルに使う場合は、一般的には次のように判断します。 モメンタムが-から+に転じたら買い モメンタムが+から-に転じたら売り ソースコードと実行結果def calcMomentum(**kwargs):    "

Python で ATR(Average True Range)を算出する

ATR(Average True Range)は、TR(True Range)を指定期間で平均化した値です。 まずTRとは、1期間だけで算出した値幅に加えて、直前期間からの窓開け(ギャップアップやギャップダウン)を含めた値幅まで考慮した、まさしく「真の値幅」のことです。 具体的に考慮する値幅の数式は次の通りです。||は絶対値を表します。  当期間の高値-当期間の安値 |当期間の高値-前期間の終値| |当期間の安値-前期間の終値| この3つのうちの最大値をTRとしま

Pythonで指数平滑移動平均(Exponential Moving Average、略:EMA)を算出する

指数平滑移動平均(Exponential Moving Average、略:EMA)とは指数平滑移動平均(以下、EMA)は、単純移動平均(以下、SMA)のデメリットである過去の値と直近の値を同等に扱うことを改めて、直近の値の寄与を大きくすることで変化に対する反応を早めた移動平均です。 数式で表すと次のようになります。 EMA = 直前のEMA×(1-2÷(算出期間+1)) + 最新の値×2÷(算出期間+1) または EMA = 直前のEMA + 2÷(算出期間+1)×(最新

Pythonで単純移動平均(Simple Moving Average、略:SMA)を算出する

単純移動平均(Simple Moving Average、略:SMA)とは単純移動平均とは、最新の値を含めた指定期間の単純平均を時系列に算出した値です。 単純移動平均は期間における平均値のため、投資においてはその期間で取引した人の損益分岐点と考えることもできます。 単純移動平均の向きの上下は、算出期間から外れる値と最新の値の高安を表します。 すなわち、 算出期間から外れる値<最新の値 なら上向き 算出期間から外れる値>最新の値 なら下向き ということです。 メリットとし