Recent Changes

2018-07-13

Latest File Release

This Project Has Not Released Any Files

Wiki Guide

Side Bar

OmegaChart サンプル・コード

5chで出されたサンプルコードのおまとめ
OmegaChartスレ ver.10
https://egg.5ch.net/test/read.cgi/software/1488866170/
ご自由、かつご自身の責任においてご使用してください。

オシレータ表示段を増やすには? (アイコン設定方法も)

デフォルトでは、オシレータを3つ同時に表示できますが、これを増やす方法

1.アイコンを設定するには、ImageListForm.csを開く
2.フォームのデザインが開くので、たぶん左下にみえる_image16、これを右クリックしてイメージの選択を押下
3.25個のメンバーが並んでいると思うので、任意のアイコンを追加、追加したアイコンを(右にある矢印ボタンを使って)18番目に移動
4.ImageListForm.cs の internal class IconConst 此処の中の記述
public const int OSCILLATOR3 = 17; この行の後に以下行を付け加える
public const int OSCILLATOR4 = 18;//新規追加
public const int ACCUMULATIVE=19;//この行以降修正。数字を一つずつずらして最後まで
5.Preference.cs internal class OscillatorPreferenceの一番上、LENGTH = 3 を 4に変える。
※参考 ChartTitle.cs public ChartTitle()の中の記述「オシレータの表示をするかどうかを指定します」が書いてあるコード群がオシレータ関係でアイコンの設定もここで行われている

スクリーンショット出力機能

OmegaChartの画面イメージをファイル出力する機能のサンプルコード
サンプルでは、CtrlキーとAltキーを同時に押しながら、Cキーを押下すると動作。
OmegaChartの実行ファイルがあるフォルダ配下の「ScreenShot」フォルダに「銘柄コード.png」というファイルが保存されます。
https://osdn.net/users/omegachartuser/pastebin/5822

銘柄名を含んで、ファイル出力するならば、OutputCaptureでの、Rectangleのパラメーター設定は以下のように変更
Rectangle rc = new Rectangle(
Env.Frame.Location.X + 7,//7は微調整
Env.Frame.Location.Y + Env.Layout.HeaderHeight + 30, //30は微調整
Env.Layout.ChartAreaWidth,
Env.Layout.ChartAreaBottom + Env.Layout.HeaderHeight - 20);//-20は微調整

日付を固定して表示する機能追加

日付を固定して表示する機能追加のサンプルコードです。
機能を使うときは>>686さんのアイデアを頂いて、固定したい日付の上で右クリックして、「日付固定表示」の項目をクリックすると固定されます。
解除したいときは任意のチャート画面上で右クリックして「日付固定表示中:yyyymmdd」の項目をクリックすれば解除されます。
注意点として、例えば2017/12/29を指定しても2018年の年足がない状態を期待してもそうなりません。

OmegaChart 日付固定表示 Preference.cs 追加修正ポイントには//☆FixedDisplayYMD
https://osdn.net/users/omegachartuser/pastebin/5802
OmegaChart 日付固定表示 MainFrame.cs 追加修正ポイントには//☆FixedDisplayYMD
https://osdn.net/users/omegachartuser/pastebin/5803
OmegaChart 日付固定表示 Command.cs 追加修正ポイントには//☆FixedDisplayYMD
https://osdn.net/users/omegachartuser/pastebin/5804
OmegaChart 日付固定表示 ChartDrawing.cs 追加修正ポイントには//☆FixedDisplayYMD
https://osdn.net/users/omegachartuser/pastebin/5805
OmegaChart 日付固定表示 ChartCanvas.cs 追加修正ポイントには//☆FixedDisplayYMD
https://osdn.net/users/omegachartuser/pastebin/5806

KABU+(こもりばん氏サイト)から株価取得する

KABU+(こもりばん氏サイト)から株価取得 差し替え その1
https://osdn.net/users/omegachartuser/pastebin/5778

DownloadOrder.csからこのコードを呼び出す変更が必要です。
Standardコースで1時間当たり4アクセス制限があり、指定日分の1日分しか取れません。
このサイトは有料サイトです。(Standardコースで1か月1000円くらい。)
契約するともらえるIDとパスワードをこのサンプルコードではコードに直接書き込み方式になっています。
適宜書き換えをお願いします。
株価だけではなくて、時価総額や決算データ、PERなど投資指標、浮動株比率、日証金、信用取引残高などあります。

株探から株価取得

OmegaChart かぶたんから株価取得 Kabutan.cs 差し替え その1
https://osdn.net/users/omegachartuser/pastebin/5797

処理時間は自分の環境で70分くらい。1スレッド、1000msSleep()です。
探したらJasdaq指数もあったので追加しました。

フィボナッチ・リトレースメント描画機能

Altキーを押しながらラインを引くと5本のラインが出来ます。ラインを消す時は上下の2本ライン、どちらかをクリックすると消えます。 移動も長さの延長もできないです。

OmegaChart Fibonacciリトレースメント Fibonacci.cs 新規追加 ※差し替え その3
https://osdn.net/users/omegachartuser/pastebin/5775
OmegaChart Fibonacciリトレースメント Util.cs 追加修正ポイントには//☆Fibonacci
https://osdn.net/users/omegachartuser/pastebin/5762
OmegaChart Fibonacciリトレースメント Preference.cs 追加修正ポイントには//☆Fibonacci
https://osdn.net/users/omegachartuser/pastebin/5761
OmegaChart Fibonacciリトレースメント Env.cs 追加修正ポイントには//☆Fibonacci
https://osdn.net/users/omegachartuser/pastebin/5760
OmegaChart Fibonacciトレースメント CustomizeDialog.cs 追加修正ポイントには//☆Fibonacci
https://osdn.net/users/omegachartuser/pastebin/5759
OmegaChart Fibonacciトレースメント Command.cs 追加修正ポイントには//☆Fibonacci
https://osdn.net/users/omegachartuser/pastebin/5758
OmegaChart Fibonacciトレースメント ChartDrawing.cs 追加修正ポイントには//☆Fibonacci
https://osdn.net/users/omegachartuser/pastebin/5757
OmegaChart Fibonacciトレースメント ChartCanvas.cs 追加修正ポイントには//☆Fibonacci ※差し替え その1
https://osdn.net/users/omegachartuser/pastebin/5765

https://osdn.net/users/omegachartuser/pastebin/5765
361行目を
var point = this.PointToScreen(new Point(this.Location.X, this.Location.Y + _title.Height));
に修正。
362行目を
Rectangle r = new Rectangle(point.X, point.Y, Env.Layout.ChartAreaWidth, h);
に修正。

TradeStationスキャナから出力したCSVで株価取得

OmegaChart TradeStationスキャナから出力したCSVで株価取得
https://osdn.net/users/omegachartuser/pastebin/5755
例によって新しい項目として上記のファイルを作って、DownloadOrderから呼び出す。

必要な作業の手順として、
1.TradeStationを開く
2.ファイル、新規作成、トレーディングアプリケーションウインドウから、スキャナーを選ぶ
3.挿入ボタン押下
4.名前を適当に書き、シンボルに全銘柄(日本)を設定、スキャンで使用する基準を選択で、フィールドに始値、高値、~略~、出来高などを選択
5.演算子は「表示」
6.終了ボタン押下して、適当に付けた名前のスキャンが存在するのを確認
7.そのスキャンを右クリックして、スキャンの設定、結果のダイアログで結果ファイルの生成にチェックを入れる
8.スケジュールとかはご希望で。
9.動作させたい場合は、作ったスキャンをクリックして実行、CSVファイルが得られる
以上

DreamVisor.csで上書きから追記に改変する

DreanVisor.csにある ImportFullDataを以下のリンク先のように書き換える。
注意としまして、空なのに銘柄ファイルがある(0バイトファイル)と、エラーにもならず、その銘柄だけ更新されません。

OmegaChart DreamVisor.cs 必ず上書きじゃなくて、未来データなら追加するように書き換える(修正版その1)
https://osdn.net/users/omegachartuser/pastebin/5753

株価がなぜか置いてあるサイトから株価取得

OmegaChart 株価がなぜか置いてあるサイトから株価取得
https://osdn.net/users/omegachartuser/pastebin/5733

株価がなぜか置いてあるサイトから株価をダウンロードしてオメガチャートのデータファイルを作るサンプルコードです。
https://egg.5ch.net/test/read.cgi/software/1488866170/ ※303 ※313-316 ※320 ※330 などが参考)
株価がなぜか置いてあるサイトの一番古いデータは2017/12/7、2017/12/14から出来なかった銘柄情報も追加という仕様変更あり。

ジグザグ・ライン描画

Omegachartで何点かを指定してジグザグラインを引かせたい
開始地点2カ所を指定してエリオット波を表示させたい

エリオット波動のサンプルコード。 
ライン情報の追加方法はOptions.conf直書き。FreeLineと同じフォーマット。
elliott-lines=101:D:20170101:23000:20180101:48000,9984:DL:~以下略~
FreeLine.csをコピーしてコンパイルを通るだけにしただけのようなもの。 色は変えられます。 ご懸念のジグザグラインは、Elliott.csのDrawで書いてます。 エリオット波動と名前が付いてますが、肝心のエリオット波動のロジックは入ってませんので名前倒れです。

OmegaChart Elliot波動 Elliott.cs 新規追加
https://osdn.net/users/omegachartuser/pastebin/5743
OmegaChart Elliot波動 Preference.cs 追加修正ポイントには//☆Elliott
https://osdn.net/users/omegachartuser/pastebin/5742
OmegaChart Elliot波動 Env.cs 追加修正ポイントには//☆Elliott
https://osdn.net/users/omegachartuser/pastebin/5741
OmegaChart Elliot波動 CustomizeDialog.cs 追加修正ポイントには//☆Elliott
https://osdn.net/users/omegachartuser/pastebin/5740
OmegaChart Elliot波動 ChartDrawing.cs 追加修正ポイントには//☆Elliott 差し替え その1
https://osdn.net/users/omegachartuser/pastebin/5808
OmegaChart Elliot波動 ChartCanvas.cs 追加修正ポイントには//☆Elliott
https://osdn.net/users/omegachartuser/pastebin/5738

インデックスファイル(index.txt)のダウンロード機能の改変

Protraさん配信のindex.txt(index.txtのダウンロード)に無い銘柄はダウンロードのたびに消える仕様でしたが、残す仕様に変更するサンプルコードです。 OBS銘柄とかも残ります。

OmegaChart ダウンロードindex.txtとローカルindex.txtをマージする機能 DownloadIndexFileDialog.cs
ttps://osdn.net/users/omegachartuser/pastebin/5730
↑こちらは差し替え

OmegaChart ダウンロードindex.txtとローカルindex.txtをマージする機能 brand.cs
https://osdn.net/users/omegachartuser/pastebin/5731
↑こちらは追加

楽天RSSから株価取得する

https://osdn.net/users/omegachartuser/pastebin/5672 このコードをオメガに任意の名前で新規追加して、NDdeを参照か、NuGetから呼び出し DownloadOrderから、これを呼び出すだけで一応は動くと思います。 うちの環境で処理時間30分くらいかかりました。 処理日を過去にしたときの対応は書いてません。ご注意を。

楽天RSSから株価取得 最新日付のみ更新させる

https://osdn.net/users/omegachartuser/pastebin/5673 Util.GuessLatestTradeDate()を召喚させただけですが。
private void GetIndexValues()の中の記述を訂正です。
誤: volume = _marketVolumedate
正: volume = code == "N225" ? _marketVolumedate : 0
(92行目を書き換え)

あと問題になりそうなのが、225先物とTOPIX先物。。 15:15~16:30の間しか、ちゃんとした4本値が取れない。 なので、オメガチャート実装、先物RSSデータ取得は止めた方がいいっぽいですね。

データ

オメガチャートの初期化ファイル(ZIP)

data.zip

https://drive.google.com/open?id=1yFyFiI1OI-HlJwB9KoBMd9_qqa9y8mAQ
k-dbさんのサイトにあったCSV群の一部をZIPに固めたものにプラスして2018年6月までの情報を付け足したもの
ドル円など為替、ダウなど海外指数などは2018年度分からは更新しません

k-dbの株価ファイル

kdb_csv.zip

https://drive.google.com/file/d/1wUVliXobs1niPhyjHYuqa64ob7T_WG9O/view?usp=sharing

k-dbさんのサイトにあったCSV群の一部をZIPに固めたもの 中身はkdbというフォルダ、kdb_otherというフォルダ、readme.txt kdbというフォルダには個別銘柄のCSVファイルが、kdb_otherは個別以外の指数とか先物のファイルが、 readme.txtには、ファイル名と中身とそのCSVファイルが次に説明するオメガチャートのデータファイル番号との関係についての説明書きが掲載

kdb_data.zip

https://drive.google.com/file/d/17L52RtZPMMXX89SwDgnVE6xELHXpyPkv/view?usp=sharing

k-dbさんのサイトにあったCSV群をOmegaChartのデータ形式に変換してZIPに固めたもの ダウンロードして、OmegaChartの機能である「データの初期化」で使える 解凍するとdataというフォルダ、その中身は4桁数字のファイルが格納されている 上記kdb_csv.zipにあるreadme.txtに、そのファイル名がどの銘柄のファイルなのかが記されている。 例えば0101が日経平均、0102がTOPIX、0103が東証二部指数、0106がジャスダック、0111がマザーズなど。

Latest File Release

This Project Has Not Released Any Files

Recent Tickets

(empty)