コバのシステムトレード構築日記(Dukascopy他)

IB証券/DukascopyとのAPI接続ナレッジや、トレステなど

マルチチャートのレイアウトなど

EL使えば色々できますなあ。

先のお話の続きとして。

EL環境から MultiChartを開きます。

ツール、オプションでライン番号表示の前提で、

27行目にこんなのあります。(゜Д゜)
    int MAX_CHARTS(30),

数字変えてみましょう。掛布ファンだったので31は確認しました。

これ以上増やすとどうなるかは知りません。

32行目にこんなのあります。(^_^)

    int SPACE_BETWEEN_CHARTS(10),

8ぐらいにしとくとスクロールバーが出てきてもフルHDで横に9つ並びます。

37行目にこんなのあります。(^_^)

  string TIME_FORMAT_STRING( "%H:%M:%S" ),

1分足以上の表示だったら、:%Sを消しても良いかもしれません。

EasyLanguageの最初の作業:マルチチャートの色の変更

Easyと言われてさっぱり解らないという微妙なプレッシャーで日々悶々としています。

昨日の朝もいつものように起動不具合のトレステかと思ったら、昨晩終了時にマルチチャートを閉じた状態で終了させていたおかげか、何事も問題なく一発で起動しました。時間かかるけど。

今週はマルチチャートのワークスペースを閉じてからトレステ終了というのを続けてみます。

 

EL開発環境で、まずピンと来ないのが何を開いて何を保存してどうしておけばどうなるのかという基本的なところが見つけられず悶々としていたわけです。Javaで言えば、javaファイルでコード書いてclassファイル生成して、実行形式に応じてアーカイブして配布して動くようにシェルなりアプリケーションサーバでコンフィグかけるみたいな。VisualStudio系ならビルドしてコンパイルして配布みたいな。

 

 ELだと、EL環境起動してとりあえず、ファイル(F)、開く(O)、分析タイプを選択(A)、アプリケーションを選び、MultiChartを開いて、application colors and fontsとあるあたりをぐりぐりと適当に修正して、保存して、構築する(B)、検証(V)もしくは F3キーを押すと、マルチチャートの色合いが変更されてハッピーになれます。

ほぼ見えない濃い青のフォントをどう修正すれば良いのか謎のままですが、その他周辺の色合いを変えて見やすくできます。こんな感じ。//を入れればコメントになります。

f:id:koba_tradestation:20161025023910j:plain

//--------------------------------------------------------------------------------------------------------------
//    application colors and fonts
//--------------------------------------------------------------------------------------------------------------
method void InitColorsAndFonts()
begin
    //clrBackground = Color.FromArgb(71, 78, 87); --> チャートの背後のウィンドウ背景
    clrBackground = Color.FromArgb(71, 78, 87);
    //clrButtonsBackground = Color.FromArgb(22, 39, 53); --> 左上のボタンの背景
    clrButtonsBackground = Color.FromArgb(22, 39, 53);
    //clrButtonsText = Color.FromArgb(182, 190, 194); --> 銘柄名、時刻、出来高数量など
    clrButtonsText = Color.FromArgb(182, 190, 194);
    //clrTileBackground = Color.FromArgb(27, 32, 37); --> 背景
    clrTileBackground = Color.FromArgb(127, 132, 137);
    //clrSymbolText = Color.FromArgb(255, 255, 255); --> 銘柄コードの部分
    clrSymbolText = Color.FromArgb(255, 255, 255);
    //clrDarkGray = Color.FromArgb(182, 190, 194); -->出来高部分の色
    clrDarkGray = Color.FromArgb(82, 190, 194);
    
    fntButtons = Font.Create(FONT_FAMILY, 10);
    fntSymbol = Font.Create(FONT_FAMILY, 12, FontStyle.Bold);
end;

 

3原色指定を3つの数字で指定するので適当に好みで変更できます。チャート背景と出来高の棒グラフの色を変えてます。

 

ついでに、構築する(B)、すべてを検証(F)を実行したら、すべての既存EL関連がビルドされるので、なんとなくどういう構成でどう作っていけば良いかシステム系の人なら解るのでは無いかと感じました。これであと一〇年は戦えるかもしれない。

 

不安定を回避

経験則として、TradeStationは、うちの環境において、

寄り付き前にリセットされる06:00以降に起動すると必ず動作不良になる。

アプリとして終了もできないので Windows10再起動すると動く。

最初はマルチチャートがダメなのかと疑ったけど、ワークスペースの数も、どのトレーディングアプリかも関係なくダメ。

毎日、Windows再起動で回避中。

ローカルキャッシュのデータが悪いのか、新しいデータを取り込むスピードが想定よりも遅いなどの回線や環境系との不具合なのか、判らない。

 

あと、表示可能な銘柄数は2,000もあって素敵♪という感じだったけど、PBRとかPERなどの一部の項目はレーダーチャート上で1,000銘柄までと言うキャップがありました。ちょっと凹んでます。過去のデータ含めた計算で大変なんでしょうけど、なんとか2,000銘柄まで対応して欲しいところです。

 

あと、マルチチャート。フルHD解像度で 9×3の27銘柄表示できないのなんとかならんもんでしょうかねえ。27銘柄目を入力したら、入力用のやつが改行されて4行になってスクロールバーが現れて横に9銘柄表示されていたのが8銘柄になって残念な感じになる。

ほかの口座開設

Interactive Brokers証券、Dukascopy Japanに口座開設を申し込んでみました。

どちらもシステム接続を提供してくれているっぽいので、かなり高度なことができそうです。

Dukascopyのほうは、本日郵便局に取りに行く予定。

 

トレステは、システム開発経験がない人でも頑張れば使えるように敷居を下げてくれている素晴らしいツールだと思います。普通のUIも用意されているようですがシステム接続となるとこの2社は完全に金融システム開発経験が無いと敷居が高そうです(^^;。特に IB証券のほうはGUIでも英語のUIだけなようですので敷居はさらに高そうです。

 

それぞれ公の場にどこまで書いてよいかとか許諾の内容をよく読んでいないので未確認ですがまぁ面白そうなネタがあれば範囲内で書いてみたいと思います。

トレステ:レーダースクリーンを効率よく設定する2

小ネタです。

意外と気づくまでに時間がかかったのを2点。

 

1:列の属性を一括してセットする方法

 項目名を右クリックして列全体を選択。(左だとソートされる)

 すべての銘柄コードの'項目名'を設定を選んで操作。

 

 登録済み分析グループのベーシック2を選んだ際に、取引時刻がAM/PM設定だったため直そうとしたのですが引っかかりました。

 

2:メモの作成

 挿入メニューからインジケータ。

 カスタムメモを追加。

 ダブルクリックで銘柄ごとの個人メモを入力タブの値にセット。

 

 材料銘柄などのちょっとした備忘録を入れたい場合に、そういうの無いのかなあと試行錯誤で発見しました。

トレステ:レーダースクリーンを効率よく設定する1

レーダースクリーンが基本的にメインになると思います。ここからピックアップしてチャート表示したり、オーダー出したりと。

 

ワークスペース設定と、ページ設定をどう組み合わせるのかがコンマ数秒でも無駄にせず思考の妨げにならないような設定がベターだと思います。試行錯誤して、個人的には、以下の3つの方針。

1:ディスプレイ1枚をレーダースクリーン専用に割り当て、Mainというような適当な名前を付けたトレステのデスクトップとして保存する。

2:Max2,000銘柄を自分なりに分割して、その分割ごとにワークスペースを割り当てる。日経225銘柄であれば日経225というワークスペースを作る。そうすることでCtrl+PageUp(Down)により即座に切り替えられる。

3:ワークスペースの中のページは日経225など同一の銘柄リストの異なるビューを表示したいときに切り替えるものとして使う。ページ切り替えがキーボードでできないので操作に時間がかかるマウスとなるため仕方がない。

 

 で、面倒くさいのが列幅をちまちまと調整したり、表示カラーをページごとに設定したりする作業、最初は楽しいけどすぐに飽きます(;´Д`)。しかしながら設定メニューにある「分析グループ」と「テンプレート」を使うことでページ新規作成時の作業が楽になります。基本的に、「分析グループ」>「テンプレート」という主従関係です。

 

 まず、最初のページ一枚を自分好みで頑張って設定します。このとき挿入メニューから「分析グループ」を選ぶのがお勧め、やってみれば解りました。自分なりにいい感じにレイアウトを作ったら、設定メニューから「分析グループを保存」します。グループ名に適当に名前を付けます。このとき「新規のレーダースクリーン(クオート)ウィンドウに自動的に挿入する」をonにするとハッピーになれます。項目の配置がここで保存されます。

 引き続き、設定メニューから「テンプレートを保存」します。「デフォルトとして設定」をonにしても良いです。レイアウトの色合いなど見た目の要素が保存されます。

私は東証一部系はこの色合い、JASDAQ/マザーズ系はこっちの色合いみたいな使い分けしてます。

f:id:koba_tradestation:20161020043412j:plain

 

これで新規ページ作成時に列幅セットを含む同じレイアウトが使いまわしできます。異なる目的で項目を入れ替えたのを、同じように分析グループで保存すればパターンも増やせます。色合いはテンプレートの適用でOK。

 

これでだいぶ楽になりました。(*´▽`*)

いまいち不安定

たいしたことも無く、Windows10の環境(が原因?)だけど、いまいち不安定な挙動という話。

 

Case1: マルチチャート表示で固まった。

 マルチチャートのワークスペースに切り替えたら、他の画面も含めて一切のページやワークスペース切り替えができず、直前表示していた画面がピコピコして一応生きているけど反応が無くなる状態。強制終了+Windows再起動で治った。その前に強制終了後にトレステを起動すると、マルチチャートは駄目だったのでもう一度強制終了して、マルチチャートのワークスペースファイルを消そうとすると Easy Language何ちゃらが開いていますからダメみたいなワーニングで消せなかった。そこでOS再起動で治ったという流れ。以後の再現性は確認できず。

 

Case2: 寄り付き前に起動するもワークスペースとページ切り替えできず。

 Case1と似ていたので、強制終了かと思い、念のため普通に終了処理をするとウィンドウのクローズボタンは有効で閉じられた。OS再起動で治った。以後の再現性は確認できず。バックグラウンドプロセスで Windows10はブラックボックス化しているので、何かの処理が動いていてダメだったのかもしれない。

 

まぁ、Windows10に振り回されるのにウンザリなので、昔みたいにモチベーションを持ちつつ Debug Toolにかけて原因を探る気力は無いので、とりあえず動けばOKという力学が働く。

 

寝てる間に取引までには Long Long Long way to goalなのかもしれない。