3回目の今回は基本的な値の取得と演算について覚えていきましょう!
チャート上の値
チャートに表示されるのは、足(あし)ですね。この足には、様々なものがありました。
よく目にするのはロウソク足。他に平均足や、カギ足等色々とあります。ラインチャートと言って終値を折れ線グラフで繋いだものもあります。
ここら辺は基本のキなので、Trading viewでは上のタブで変更できます。
さて、これらの足を構成するものは4つの値です。それは
- 始値(open はじめね)
- 高値(high たかね)
- 安値(low やすね)
- 終値(close おわりね)
これらを組み合わせて表示されるものが「足」です。
さらに、チャート上で表されるものは「時間」です。
これは、足が示す時間にもよりますが、基本的には足の本数と足1本が担う時間の掛け算です。
1時間足なら1本で60分を表し、00分から59分までの値動きを示します。
pineスクリプト的には、現在の足を[0]とし、1つ前を[1]、2つ前を[2]という具合に表します。
空のindicatorを開く
まずはPineエディタ→開く→新規の空のインジケーターを選択します。
そうするとこれまでに見たようなコードが出てきましたね。
それでは、少しいじってみて、以下のようなスクリプトに書き換えてみます
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © FP嶋
//@version=5
indicator("練習",overlay = false)
plot(close, color = color.new(color.red,0))
plot(high, color = color.new(color.green,0))
plot(low, color = color.new(color.blue,0))
plot(open, color = color.new(color.yellow,0))
overlayはメインチャートに出すかサブチャートに出すかでした。今回は = false としたのでサブチャートに表示されます。
続いてplotです。
plotは線を引く関数で、引数はいくつかあります。
plot(1, 2, 3, 4,5, 6, 7, 8, 9, 10, 11, 12,13)
1. series (series) 描写されるデータ形式。 必須の引数。
2. title (const string) plotのタイトル。
3. color (color) プロットの色。オウルバーの色。 'color=red'や 'color=#ff001a'のような定数だけでなく、 'close> = open ? green : red'のような複雑な式を使うことができます。 選択因数。
4. linewidth (integer) プロットされた線の幅。デフォルト値は1です。すべてのスタイルに適用できるわけではありません。
5. style (integer) 描画のタイプ。可能な値は line, stepline, histogram, cross, area, columns, circles です。デフォルト値は lineです。
6. transp (integer) plotの透明度。可能な値は 0 (不透明) から100 (不可視) です。オプション引数です。
7. trackprice (bool) trueの場合、水平価格ラインには直近のインジケーター値のレベルが表示されます。デフォルトはfalseです。
8. histbase (float) histogram, columns または area スタイルでプロットをレンダリングする際に開始起点と見なされる価格の値。デフォルトは0.0です。
9. offset (integer) 与えられた数のバーで描写を左または右に移動します。 デフォルトは0です。
10. join (bool) trueの場合、描写されたポイントは線で結合され、crossスタイルと circlesスタイルのみに適用されます。 デフォルトはfalseです。
11. editable (const bool) trueの場合、描写されたスタイルはフォーマットダイアログで編集可能です。 デフォルトはtrueです。
12. show_last (const integer) 設定されている場合は、チャートにプロットする (最後のバーから過去の時点までの) バーの数を定義します。
pineリファレンスより引用
う~ん わかりづらい!
必要な引数は1つで、連続する数値が必須です!
したがって、plot(close)で線は引けます!
次に、colorの引数についてですが、color = と書かれた部分で colorの引数に = より後ろの値を引数として使います!っと宣言しています。
のちの color.new(1,2) とは 1で色を指定して、2で透明度を指定する関数です。これの便利なところは、同時に透明度指定できるところ。したがって、出来る限り色の設定をするときはcolor.newを使って設定していくと良いでしょう! 色の指定はcolor.色名で指定できます。何色かありますが、今回は説明は省きます。
色が付けられる設定画面が出てますね。
さて、では簡単な演算を行ってみましょう!
+:足し算 キーボードのエンターの3つ左隣 shiftと同時に押す
- : 引き算 キーボードのback space の3つ左隣
/ : 割り算 キーボードのshiftの2つ左隣のボタン
* : 掛け算 キーボードのエンターの2つ左隣 shiftと同時に押す
割り算も分数だと思えば簡単ですね。掛け算だけちょっと違う記号に感じますが、これで掛け算として使います。
では、以下のようなコードを書いてみましょう
a = (high + low )/(high - low) - (close * open)/(high * low)
plot(a, color = color.new(color.red,0))
練習なので、特に意味はなく、足し算と引き算を使っています。もちろん、()は普通の算数同様先に計算されます。
サブチャートの赤い線が計算結果です。すべてのローソク足の下にその時その時の、Close,High,Low,Openを使って先ほどの式の計算が行われています。
次は少し意味がありそうな計算をしてみましょう。
indicator("練習",overlay = false)
b = close[1] / close[2]
plot(b, color = color.new(color.red,0))
closeの後ろにある[]の数字はローソクの本数を表します。すなわち、現在が0なので、1つ前のローソク足の終値がclose[1]、2つ前のローソク足の終値はclose[2]となります。
ここではclose[1]をclose[2]で割っています。日足で出していますので、前日の終値の値が、前々日の終値に対してどの程度変化したのかという割合を示していると言えます。
1より大きければ前日は陽線、1より小さければ前日は陰線であったことを示します。
なんだかもじゃもじゃした線が引けました!
要は陰線か陽線かを示していると思っていただいてよいです。ただし、変化の割合は前日に対してであるので、必ずしもローソク実体の長さとは意味が違うという事も理解しなくてはなりません。
今回は簡単な四則演算とその線の引き方について学びました。また、色の使い方の基本も学びましたね。少しずつ覚えていきましょう!
今回はこのへんで!
おすすめFXアイテム
過去検証や分析はMT4かFT4、Trading viewがおすすめです。
無料が良い人はMT4で、MT4を使わせてくれる口座を使用すると良いです。おすすめはFXTF
チャート分析に毎月課金してもいいよって人はTrading viewがおすすめです。無料もあります