2012/2/1
Point & Figure(ポイントアンドフィギャー)
Point and Figureは非時系列系のチャートの一種です。非時系列系とはチャート時間軸が等間隔ではないということです。
値幅を設定し、値動きがその値幅分動いたらその値幅分のマーク(上に動きたら×、下に動いたら○を描くのが慣例)を書き込みます。
練行足をぎゅっと縮めた感じのチャートになり、計算方法も練行足と似ています。
値幅と転換枠数を設定し、上昇トレンドの場合は値幅分上に動いたら×の上に×を書きます。
値幅×転換枠数以上下落した場合トレンド転換と判断し、直近の×の上から2番目の右から○を下がった値幅分書きます。
下落トレンドの場合は値幅分下に動いたら○の下に○を書きます。
値幅×転換枠数以上上昇した場合トレンド転換と判断し、直近の○の下から2番目の右から×を上がった値幅分書きます。
Excelで使用する関数
参照文字列に指定したセル参照の文字列が参照形式と合致していない場合、エラー値#REF!が返されます。
そうでない場合は照合の型で指定した動作に従った行数を返します。
照合の型には1,0,-1のいずれかを指定します。
1: 完全一致がない場合、検査値以下の最大値の行数を返します。データを昇順に並べ替えておく必要があります。
0: 完全一致がない場合、エラー値#N/Aが返されます。
-1: 完全一致がない場合、検査値以上の最小値の行数を返します。データを降順に並べ替えておく必要があります。
Point & Figureは計算ルールは簡単だけどそれをExcelで計算し、チャートを描画するには面倒な操作が必要なチャートです。
Point & Figureの計算は練行足とかなり似ているので、計算過程も練行足のそれと酷似しています。
F5セルはPoint & Figureの値幅を指定するセルとします。
G5セルはPoint & Figureの転換枠数を指定するセルとします。
G6セルに=F6を代入します。
I6セル〜L6セルに1を代入します。
M6セルに=F6*F5と入力します。この値はPoint & Figureの開始位置になります。
O6セルに1を代入します。
F列で当日位置(終値÷値幅の切り捨て)を計算します。簡単な計算式なので式の説明は省略します。
これを元にPoint & Figureの位置、トレンドなどを計算します。
G列でPoint & Figureの現在の基準位置を計算します。
Point & Figureは値幅を1ユニットと考えた場合、前日の基準位置と当日位置の差の絶対値が転換枠数以上の場合は当日位置が基準位置、
それ以外の場合、前日のトレンドが上昇トレンドの場合前日基準位置と当日位置を比べて大きい方、
それ以外の場合は前日基準位置と当日位置を比べて小さいほうが基準位置となります。
これを式に直すと
H列で前日基準位置と当日位置の差を計算します。簡単な計算式なので式の説明は省略します。
I列でtrendを計算します。この値は基準位置の計算やPoint & Figureの値の計算に使います。
上昇トレンドを+1、下落トレンドを-1と定義します。
前日trendが+1でH列の値が-転換枠数以下の場合か前日trendが-1でH列の値が転換枠数以上の場合、trendが変化します。
これを式に直すと
J列でcountを計算します。countは基準位置が変わると+1されます。簡単な計算式なので式の説明は省略します。
K列、L列でaddress、dcountをそれぞれ計算します。
Point & Figureは基準位置が1移動するごとに、×・○を書き加えます。
そのため終値の値動きが少ない場合は何日も動かなかったり、1日で値幅の何倍も動いた場合は一度にいくつもの×・○を書く場合もあります。
それを実現するためにK列、L列を使います。
まず、K列のaddressですが、これはL列のdcountやM列のPoint & Figureの計算でJ列の参照をする時に使う数字です。
一つ上の行のL列のセルが1の場合はaddressを+1それ以外は前のセルの値を使います。
計算式は
これを式に直すと
L列でdcountの値を計算します。前のセルの値が1より大きい場合は前のセルの値を-1します。
それ以外の場合、つまりdcountは前のセルが1の場合はK列の同行の値からJ列で最初に一致する行数を計算し、
H列の該当行の数字の絶対値を計算します。
これを計算式にすると
K列、L列を合わせればJ列のcountが1進んだ時に、×・○を書く個数をK列、L列の進み具合で表すことができます。
M列でPoint & Figureを計算します。
計算式は
I列の該当行の数値を参照するという意味です。
I列の数字を参照するので1か-1になります。
それと値幅を掛けて前のセルに足せばPoint & Figureが計算できます。
こうすることによって常に値幅分だけ上下に動くようになります。
N列〜Q列はチャート描画用の数値を計算する部分です。Point & Figureは散布図で描きます。
N列はPoint & Figureの値段が更新された際のトレンドの方向を参照します。
計算式は
O列でx座標を計算します。x座標はトレンドが変化するたびに+1されるようにします。
計算式は
P列で上昇トレンド時の×のy座標を計算します。
計算式は
Q列で下落トレンド時の○のy座標を計算します。
計算式は
F6セルをコピーし、F7セルにペースト、N6セルをコピーし、N7セルにペースト、P6,Q6セルをコピーしP7セルにペースト、
F7〜Q7セルをコピーし、F8以下のセルにペーストすればPoint & Figureが計算できます。
Excelファイルがダウンロードできない場合はリンクを右クリックして「対象をファイルに保存」を選択して保存すればダウンロードできます。
まず、O列〜Q列のチャートを描きたい範囲を選択し、グラフウィザードで散布図を選択して散布図を描きます。
こんな感じのチャートが出来上がります。
次にチャート内の系列1(上昇トレンド)をダブルクリックし、データ系列の書式設定ウィンドウを出します。
そこで、パターンのマーカーの背景を「色なし」とすると、スタイルで「×」が選べるようになるのでこれを選択してOKを押します。
同様に系列2(下落トレンド)をダブルクリックしてマーカーの背景を「色なし」、スタイル「○」を選択しOKを押します。
下の図のようなチャートが出来上がります。
あとは縦軸、マーカーの大きさなどを調整すればPoint & Figureのチャートが出来上がります。
値幅を設定し、値動きがその値幅分動いたらその値幅分のマーク(上に動きたら×、下に動いたら○を描くのが慣例)を書き込みます。
練行足をぎゅっと縮めた感じのチャートになり、計算方法も練行足と似ています。
値幅と転換枠数を設定し、上昇トレンドの場合は値幅分上に動いたら×の上に×を書きます。
値幅×転換枠数以上下落した場合トレンド転換と判断し、直近の×の上から2番目の右から○を下がった値幅分書きます。
下落トレンドの場合は値幅分下に動いたら○の下に○を書きます。
値幅×転換枠数以上上昇した場合トレンド転換と判断し、直近の○の下から2番目の右から×を上がった値幅分書きます。
計算式
上昇トレンドの場合、N円上に動いたら×の上に×を書く
N×M円以上下落した場合トレンド転換と判断し、直近の×の上から2番目の右から○を下がった値幅分書く
下落トレンドの場合はN円下に動いたら○の下に○を書く
N×M円以上上昇した場合トレンド転換と判断し、直近の○の下から2番目の右から×を上がった値幅分書く
N、Mは任意
Mは3〜5が適当
N×M円以上下落した場合トレンド転換と判断し、直近の×の上から2番目の右から○を下がった値幅分書く
下落トレンドの場合はN円下に動いたら○の下に○を書く
N×M円以上上昇した場合トレンド転換と判断し、直近の○の下から2番目の右から×を上がった値幅分書く
N、Mは任意
Mは3〜5が適当
![]() |
日経平均・Point & Figureの図(2009/9/1〜,値幅100円,3本)
ExcelでPoint & Figureを計算する
Excelを使ってPoint & Figureを計算する手順を説明します。Excelで使用する関数
TRUNC(数値)
指定した数値の小数点以下を切り捨てます。IF(条件式,真の場合,偽の場合)
条件式を満たす場合は真の場合の値、満たさない場合は偽の場合の値を返します。ABS(数値)
指定した数値の絶対値を返します。MAX(数値1,数値2,…)
指定した数値や範囲内の数値から最大値を返します。MIN(数値1,数値2,…)
指定した数値や範囲内の数値から最小値を返します。AND(論理式1,論理式2,…)
すべての論理式が真の場合真を返す。そうでない場合は偽を返します。INDIRECT(文字列)
文字列で指定されるセル参照を返します。参照文字列に指定したセル参照の文字列が参照形式と合致していない場合、エラー値#REF!が返されます。
MATCH(検査値,検査範囲,照合の型)
検査値を検査範囲内から検索する文字列が見つかった場合は検索範囲の先頭からの行数を返します。そうでない場合は照合の型で指定した動作に従った行数を返します。
照合の型には1,0,-1のいずれかを指定します。
1: 完全一致がない場合、検査値以下の最大値の行数を返します。データを昇順に並べ替えておく必要があります。
0: 完全一致がない場合、エラー値#N/Aが返されます。
-1: 完全一致がない場合、検査値以上の最小値の行数を返します。データを降順に並べ替えておく必要があります。
![]() |
Point & Figureの計算は練行足とかなり似ているので、計算過程も練行足のそれと酷似しています。
F5セルはPoint & Figureの値幅を指定するセルとします。
G5セルはPoint & Figureの転換枠数を指定するセルとします。
G6セルに=F6を代入します。
I6セル〜L6セルに1を代入します。
M6セルに=F6*F5と入力します。この値はPoint & Figureの開始位置になります。
O6セルに1を代入します。
F列で当日位置(終値÷値幅の切り捨て)を計算します。簡単な計算式なので式の説明は省略します。
これを元にPoint & Figureの位置、トレンドなどを計算します。
G列でPoint & Figureの現在の基準位置を計算します。
Point & Figureは値幅を1ユニットと考えた場合、前日の基準位置と当日位置の差の絶対値が転換枠数以上の場合は当日位置が基準位置、
それ以外の場合、前日のトレンドが上昇トレンドの場合前日基準位置と当日位置を比べて大きい方、
それ以外の場合は前日基準位置と当日位置を比べて小さいほうが基準位置となります。
これを式に直すと
=IF(ABS(F7-G6)>=$G$5,F7,IF(I6=1,MAX(G6,F7),MIN(G6,F7)))
となります。H列で前日基準位置と当日位置の差を計算します。簡単な計算式なので式の説明は省略します。
I列でtrendを計算します。この値は基準位置の計算やPoint & Figureの値の計算に使います。
上昇トレンドを+1、下落トレンドを-1と定義します。
前日trendが+1でH列の値が-転換枠数以下の場合か前日trendが-1でH列の値が転換枠数以上の場合、trendが変化します。
これを式に直すと
=IF(D7="","",IF(AND(I6=1,H7<=-$G$5),-1,IF(AND(I6=-1,H7>=$G$5),1,I6)))
となります。J列でcountを計算します。countは基準位置が変わると+1されます。簡単な計算式なので式の説明は省略します。
K列、L列でaddress、dcountをそれぞれ計算します。
Point & Figureは基準位置が1移動するごとに、×・○を書き加えます。
そのため終値の値動きが少ない場合は何日も動かなかったり、1日で値幅の何倍も動いた場合は一度にいくつもの×・○を書く場合もあります。
それを実現するためにK列、L列を使います。
まず、K列のaddressですが、これはL列のdcountやM列のPoint & Figureの計算でJ列の参照をする時に使う数字です。
一つ上の行のL列のセルが1の場合はaddressを+1それ以外は前のセルの値を使います。
計算式は
これを式に直すと
=IF(L6=1,K6+1,K6)
となります。L列でdcountの値を計算します。前のセルの値が1より大きい場合は前のセルの値を-1します。
それ以外の場合、つまりdcountは前のセルが1の場合はK列の同行の値からJ列で最初に一致する行数を計算し、
H列の該当行の数字の絶対値を計算します。
これを計算式にすると
=IF(L6>1,L6-1,ABS(INDIRECT("H"&MATCH(K7,$J$1:$J$6000,0))))
となります。K列、L列を合わせればJ列のcountが1進んだ時に、×・○を書く個数をK列、L列の進み具合で表すことができます。
M列でPoint & Figureを計算します。
計算式は
=M6+INDIRECT("I"&MATCH(K7,$J$1:$J$6000,0))*$F$5
となります。
INDIRECT("I"&MATCH(K7,$J$1:$J$6000,0))はJ列からK列の数字と最初に一致する行数を計算し、I列の該当行の数値を参照するという意味です。
I列の数字を参照するので1か-1になります。
それと値幅を掛けて前のセルに足せばPoint & Figureが計算できます。
こうすることによって常に値幅分だけ上下に動くようになります。
N列〜Q列はチャート描画用の数値を計算する部分です。Point & Figureは散布図で描きます。
N列はPoint & Figureの値段が更新された際のトレンドの方向を参照します。
計算式は
=INDIRECT("I"&MATCH(K7,$J$1:$J$6000,0))
となります。O列でx座標を計算します。x座標はトレンドが変化するたびに+1されるようにします。
計算式は
=IF(N7=N6,O6,O6+1)
となります。P列で上昇トレンド時の×のy座標を計算します。
計算式は
=IF(N6=1,M6+$F$5/2,NA())
となります。Q列で下落トレンド時の○のy座標を計算します。
計算式は
=IF(P7=0,$F$5,0)
となります。F6セルをコピーし、F7セルにペースト、N6セルをコピーし、N7セルにペースト、P6,Q6セルをコピーしP7セルにペースト、
F7〜Q7セルをコピーし、F8以下のセルにペーストすればPoint & Figureが計算できます。
Excelファイルがダウンロードできない場合はリンクを右クリックして「対象をファイルに保存」を選択して保存すればダウンロードできます。
Point & Figureのチャート描画
Point & Figureのチャートは散布図を使って描きます。ここではその方法を解説します。まず、O列〜Q列のチャートを描きたい範囲を選択し、グラフウィザードで散布図を選択して散布図を描きます。
![]() |
こんな感じのチャートが出来上がります。
![]() |
次にチャート内の系列1(上昇トレンド)をダブルクリックし、データ系列の書式設定ウィンドウを出します。
![]() |
そこで、パターンのマーカーの背景を「色なし」とすると、スタイルで「×」が選べるようになるのでこれを選択してOKを押します。
同様に系列2(下落トレンド)をダブルクリックしてマーカーの背景を「色なし」、スタイル「○」を選択しOKを押します。
下の図のようなチャートが出来上がります。
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
↑ TOP PAGE