サンプル:ローソク足チャート

www.altova.com すべてを展開/折りたたむ このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  SPS ファイル: コンテンツ > チャート >

サンプル:ローソク足チャート

(以下のスクリーンショットにて示される)ローソク足チャートは、株価の動きなどを示すために通常使用されます。チャートにはその日の始値と終値、そして高値と安値が表示されます。

 

CandlestickGen

 

MyStock という名前の架空の会社に対して、2011年4月11日から2011年4月20日にかけての株価の動きをローソク足チャートで表した例を上に示します。各ローソク足にある垂直線の上端と下端により、それぞれその日の最高値と最安値が示されます(以下のテーブルから株価を参照ください)。色により塗りつぶされたローソク足のボックスにより、その日の始値よりも終値が下がったことを表され、塗りつぶされていないボックスにより価格が上がったことが表されます。例えば4月11日には210から203へ価格が下がっているのに対し、4月12日では、205から218へ価格が上がっています。

 

CandlestickGenTable

 

(以下のスクリーンショットに示される)2種類目のローソク足チャートでは、(i) その日の最高値、(ii) その日の最安値、(iii) (水平線により示される)その日の終値が示されます。

 

CandlestickGen3

 

ローソク足チャートサンプルファイル

このセクションで取り上げられたローソク足チャートのサンプルは (マイ) ドキュメントフォルダーC:\Documents and Settings\<username>\My Documents\Altova\StyleVision2019\StyleVisionExamples/Tutorial/Charts に収められています。Candlestick.sps という名前の SPS ファイルでは、Candlestick.xsdCandlestick.xml が使用されます。(以下に示される)Authentic ビューでは、ローソク足チャートに表示されるものを選択することができます。選択することができるオプションは、(i) (2つの選択肢から選択する)会社、(ii) 株価の表示を行う期間、(iii) 表示される Y-軸の下限と上限、(iv) Y-軸目盛りの間隔となっています。更に、チャート以下に表示されるテーブルでは、新たな株価データを入力することができます(行を右クリックして、Day 要素を挿入または追加してください)。

 

Click to expand/collapse

 

デザインの上部にあるコンボボックスと入力フィールドにより、ページ下部に表示されるチャートのパラメーターを Authentic ユーザーが指定できるようになっている点に注目してください。指定された値は XML ファイル内部に保管され、チャートの設定を計算するために使用されます。

 

XML ファイル

許されている XML ドキュメントの構造を以下に示します。ドキュメント要素の Trades には、1つの Selection 要素と、数に制限の無い Stock 要素が収められています。各 Stock 要素には、数に制限の無い Day 要素を含めることができます。

 

<Trades xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 

  xsi:noNamespaceSchemaLocation="Candlestick.xsd">

 <Selection>

         <Stock>Nanonull</Stock>

         <StartDate>20110103</StartDate>

         <EndDate>20110112</EndDate>

         <YAxisStart>80</YAxisStart>

         <YAxisEnd>180</YAxisEnd>

         <YAxisTickInterval>20</YAxisTickInterval>

         <WeekToView>25</WeekToView>

 </Selection>

 <Stock name="MyStock">

         <Day id="20110103" year="2011" month="Jan" week="01" date="03">

                 <Open>90</Open>

                 <High>110</High>

                 <Low>88</Low>

                 <Close>105</Close>

         </Day>

         <Day id="20110104" year="2011" month="Jan" week="01" date="04">

                 <Open>100</Open>

                 <High>112</High>

                 <Low>92</Low>

                 <Close>109</Close>

         </Day>

         ...

 

 </Stock>

 <Stock/>

   ...

 <Stock/>

 

</Trades>

 

Selection 要素には Authentic ユーザーにより与えられた情報が保管され、これらの情報によりチャートに表示されるデータの選択が行われます。つまり、チャートのデータ選択は Selection 要素内にある情報をベースに行われます。詳細については次のセクションで記述されます。各株式における与えられた日の株価に関するデータは、Stock/Day 要素内に含まれています。

 

ローソク足チャートのデータ選択

チャートのデータ選択は、チャートを右クリックしてチャート設定の編集を選択することで表示されるチャート構成ダイアログ (下のスクリーンショット参照) にて行われます(以下のスクリーンショットを参照)。データ選択はシンプルメソッドにより行われています。

 

CandlestickExDataSelection

 

設定は以下のようにして行うことができます:

 

デザインでは、Stock 要素内部にチャートが挿入されます。Stock 要素により、@id 属性の値が Selection/Stock 要素のコンテンツに等しい Stock 要素だけが選択されるようになります。Stock コンボボックスにて Authentic ユーザーが選択した Stock 要素が、各チャートで使用されるコンテキストノードとなります。
For-Each XPath 条件式により、Authentic ユーザーが StartDate にて指定した値以上、そして EndDate で指定した値以下の @id 属性値という条件に合致する、全ての Day 要素が選択されます。この設定により、Authentic ユーザーが選択した日付からデータが処理されるようになります。このダイアログ内にあるその他全ての XPath 条件式で使用されるコンテキストノードは、Day 要素となります(以下の構造を参照ください)。

 

 <Day id="20110104" year="2011" month="Jan" week="01" date="04">

         <Open>100</Open>

         <High>112</High>

         <Low>92</Low>

         <Close>109</Close>

 </Day>

 

チャートの X-軸には日付を表示します。そのため concat(@date, '-', @month) という XPath 条件式を使用します。この条件式により、対応する Day 要素の属性から日付が取得されます。
Y-軸には株価が表示されます。ローソク足チャートでは、(i) 始値、(ii) その日の最高値、(iii) その日の最安値、(iv) 終値という、4つの系列を使用します。これら各要素に対して、それぞれ Day/OpenDay/HighDay/Low、そして Day/Close 要素が割り当てられています。

 

重要なメモ:       ローソク足チャートでは、指定される系列の順序が重要になります。系列は以下の順序で指定されます:

 

4系列のチャート : (i) 始値、(ii) 高値、(iii) 安値、(iv) 終値
3系列のチャート : (i) 高値、(ii) 安値、(iii) 終値

 

系列名に使用される値が含まれるノード名は(妥当な XML 名であれば)どのようなものでも構いません(つまり OpenHigh といった名前は必須ではありません)。しかし、これらノードに含まれる値は数値でなければなりません。

 

 


 

 

サンプルファイルにおけるその他の設定

その他の重要なチャート設定を、以下のセクションで説明されます。多くは XML ファイルから動的に取得されており、 動的な XPath 設定によりセットする必要があります。

 

チャートの名前は Authentic ユーザーからのデータ指定から行われ、チャートのタイトルは 動的にセットされます
Y-軸の範囲と間隔もユーザーにより決定されるため、 動的な XPath 設定が必要になります。

 

 

 


(C) 2019 Altova GmbH