前回の記事では、自動売買プログラムを安定稼働させるための検証用ハードウェアとして、「ミニPC」を導入した背景についてまとめました。 今回はその続きとして、購入したミニPCを「モニターなし(ヘッドレス)」で稼働させるための対策アイテムと、遠隔操作の設定について記録します。
検証専用機のために常にモニターを1台接続しておくのはスペースを取りますし、消費電力の観点からも効率的ではないと考えたためです。
モニターを外すだけでは起きる「描画処理停止」の課題
「専用機なら、最初の初期設定だけモニターに繋いで行い、あとはケーブルを抜いて放置すればいい」と当初は考えていました。 しかし、システムの仕様を調べていく中で一つの技術的な課題に直面しました。Windowsの仕様上、モニターを物理的に接続していない状態だと、PC側が「画面を描画する必要がない」と判断し、グラフィックの描画処理を停止してしまうケースがあるようです。
これによりPCの動作が不安定になったり、最悪の場合は証券会社の取引ツール(GUIツール)がフリーズしてしまうという問題が起こり得ます。自動売買プログラムを稼働させている最中にシステムが停止してしまうのは、運用上の大きなリスクとなります。
対策としての「HDMIダミープラグ」導入
そこで、この「モニター未接続による描画停止」を防ぐ対策として導入したのが、「HDMIダミープラグ(ディスプレイエミュレーター)」という小型のモジュールです。
使い方は非常にシンプルで、ミニPC背面のHDMI端子にこのプラグを挿し込むだけです。これにより、PC側に対して「仮想的にモニターが接続されている」と認識させ、画面の描画処理を正常に継続させることができます。 数百円程度の安価なパーツですが、予期せぬシステム停止リスクを回避し、安全にモニターなし運用を行うための重要なアイテムとして活用しています。
現在の運用は「Windowsリモートデスクトップ」
初期設定時のみミニPCを直接モニターに繋いで作業を行いましたが、ダミープラグを接続して本番稼働に入った現在は、メインのPCから「Windows標準のリモートデスクトップ接続」を使って遠隔操作をしています。
同一のローカルネットワーク内(同じ家の中など)であれば、サードパーティ製のソフトをインストールしなくても、手元のPCから検証機の画面を呼び出して操作できるため非常に合理的です。
⚠ 注意:ミニPCのOSは「Pro版」が必須 Windows標準のリモートデスクトップ機能において、「操作される側(ホスト)」になるには、OSがWindowsの「Pro版」である必要があります。「Home版」ではこの機能のホストになれないため、検証用PCを調達する際はOSのエディションに注意が必要です。
■ リモートデスクトップの有効化手順 操作される側(ミニPC)で、以下の設定を行います。
- スタートメニューから「設定(歯車マーク)」を開く
- 「システム」 > 「リモートデスクトップ」の順にクリック
- 「リモートデスクトップを有効にする」のスイッチを「オン」にする
あとは、操作する側(メインのPC)から「リモートデスクトップ接続」アプリを立ち上げ、ミニPCの「PC名」または「IPアドレス」を入力すれば、遠隔での画面操作が可能になります。
今後の検証課題(外出先からの死活監視について)
ルーターのポート開放を行ったり、VPN環境を構築したりすれば、Windows標準のリモートデスクトップでも外出先から接続することは技術的に可能です。 ただ、セキュリティ面でのリスクが伴い、設定のハードルも上がるため、現状は「ローカルネットワーク内限定」の運用にとどめています。そのため、相場が急変している日などは、外出先でシステムの稼働状況(死活)が気になっても確認できないという課題が残っています。
今後は、Googleが提供している「Chromeリモートデスクトップ」などの代替ツールを利用し、よりセキュアに外出先からスマホ等で稼働状況を確認できる環境の構築も検討していく予定です。
ここまでの設定により、省スペースかつ消費電力を抑えた「自動売買専用のハードウェア環境」が完成しました。 次回からは、いよいよミニPCの中身(ソフトウェア側)の構築に入ります。まずは自動売買の要となる「証券口座(API)の選定理由」についてお話しします。