秋山昇 さんの日記

新しい10 昔の10  100新しい方へ移動 100昔へ移動

結局  2023/07/09(日) 01:31:43
 やはりデイトレ信用は、約定金額100万円以上を確定するために指値変更で対処するしかないという結論に至った。
そのため、ブラウザコンポーネントを操作して指値変更を行うアプリを別に作り、メインプログラムからそのアプリに変更情報を送ることで指値変更を実行することにした。
指値変更を行うアプリは、変更情報を受け取ると、(ログインされてない場合には)取引サイトにログインし、メニューを選択したり値を入れたりボタンを押したりを自動で行って指値変更操作を遂行する。
ちょっとテストした感じではちゃんと安定して動いているようだ。
プロセス間通信については共有メモリを用いた。今まではソケット通信を用いることが多かったのだが、共有メモリもなかなか便利だな。
この方式だと、注文時間が5秒くらいかかってしまうが、ミリ秒を争うような手法ではないので、たぶん問題無いだろう。

デイトレ信用については、約定代金100万円として金利1.8%は一日50円程度なので、大した金額ではないとも思うのだが、こういう細かい費用も積もるとばかにならないのである。

しかしそもそもの原因である、APIで指値変更できないという仕様自体を改善してほしいものだ。

デイトレ信用と指値変更  2023/07/07(金) 13:19:14
 現在、現物買いはデイトレ信用で買って現引き、現物売りはデイトレ信用で売って現渡しをしている。カブコム証券のデイトレ信用は、約定代金が100万円以上のとき金利・貸株料が無料になるが、100万円未満の場合には年1.8%かかってくる。
普通にウェブから発注する場合は、100万円以上になるように注文し、部分約定した場合も指値変更で残りを約定させることができるが、kabuステーションAPIでは注文の指値変更ができないので、100万円未満だけ部分約定した場合に残りを取り消して注文を入れ直すと金利・貸株料を取られてしまう。なんでこんなゴミ仕様になっているのか理解不能だ。
成りで約定させる方は100万円以上になるようにコントロールすれば問題無いが、指値の方をどうするかが問題である。
デイトレ信用が100万円未満で部分約定した場合には、指値変更(実際は取消→再発注)を出来るだけ抑制するような仕組みにするしかないが、極めて面倒である。対処法を考えるのも嫌になってきたので、また先延ばしになりそうだ。

WebSocket  2023/07/07(金) 10:51:06
 さっそく自動売買のプログラムを作成しているが、問題が発生した。
現状、ExcelVBAでWebSocketを通じてリアルタイムに板データを読み込んでいるが、新たにプログラムを作成してWebSocketで接続したところ、ExcelVBAへの情報配信が停止するということが判明した。
カブコム証券が提供しているサンプルプログラムを起動しても同じ現象が起きるので、自作のプログラムが悪いわけではなく、仕様としてWebSocketでの接続は1つに限られるということらしい。
そもそもデータ自体はkabuステーションがカブコム証券のサーバーから読み込んでおり、PC上のアプリは同じPCのkabuステーションとやり取りしているだけなので、いくらWebSocketの接続数が増えてもネットワーク負荷は増大しない筈である。なのになんでこんなゴミ仕様になっているのか理解不能である。
ExcelVBAは、これはこれで便利なので、共存させたいところである。となると、自動売買の方のプログラムは全てRESTで処理せざるを得ないか。まぁ、0.01秒を争うとかいう売買ではないので、問題無いとは思うが。

ロングショート自動売買  2023/07/06(木) 21:07:07
 面倒なので先延ばしにしてきたが、kabuステーションAPIでロングショートの自動売買プログラムを作成することにした。既にkabuステーションAPIでは売買支援ソフトを作成して便利に使っているのだが、発注のタイミングは手動なので、取りこぼしが多いのである。
ロングショートの場合、片方の銘柄が突発的に動いてすぐに戻ることがあり、そういうのを逃さないようにしたい。
具体的には、相方の銘柄を成りで約定させても既定の鞘幅を確保できる位置に指値を出しておき、指値が約定したら相方を成りで約定させることになる。これを両側でやるので、両側ともに指値を出し続けることになる。
ただ、色々と対処しなければならない問題がある。
一方の板が動くともう一方の指値を変更しなければならないが、頻繁に指値を変更すると優先順位が確保できないので、ある程度のマージンを設定する必要がある。つまり、ある鞘幅になったら指値注文を入れるが、鞘幅が少し動いても指値は変更せず、そこからある程度動いた場合のみ変更するようにするのである。ただ、板状況から、変更先の値段の板が薄く、指値を変更しても優先順位が確保できる場合はすみやかに変更するようにしたい。
あと、株の世界にはウザいボットが色々といて、厚い板を出すと反対側の板が逃げたりするので、注文も分割する必要がある。しかし、例えば1000株の板のうち700株を食ったら残り300株の板を食ったりするボットもいるので、食うなら1000株一度に食わないといけない。手動だとそういうのも考えながら売買できるのだが、自動売買でも出来るだけ有利になるように売買する必要がある。
また、一方が部分約定した場合には、もう一方の一部を成りで約定させて残りを指値にする必要もある。こういうのも結構面倒なプログラミングが必要である。
ポジション管理をストックで行うかフローで行うかも、いつも悩むところである。
ストック式、つまり、建玉株数の目標値を定めて、それに近づくように売買していく方法は、通信途絶に強いし、手動による注文を並行して発注することもでき柔軟性が高い。半面、片張りの買いが混在している場合には、その分をあらかじめ考慮しておく必要がある。また、数値の入力ミスの影響が大きいし、建玉が正確に読み取れなかった場合には延々と注文を発注してしまう恐れがある。
フロー式は、注文株数を管理する方法だが、例えば注文を取り消した場合にちゃんと取り消されているかどうか、約定していないかどうかなど、全ての注文を完全にフォローしなければならず、手数が多くなってしまう。また、一時的に通信が途絶した場合に復帰するのが困難である。特に、注文を発注した直後に通信が切れて、注文番号等が取れなかった場合には、完全にコントロール不能になってしまう。
通信が安定しているならフロー式が良い。今のところkabuステーションAPIはそれなりに安定しているようなので、フロー式で考えている。

若いときに比べるとプログラミングの際の集中力の低下が著しい。昨日作ったプログラムの続きを作ろうとしても、これ何だっけ、となることも多い。昔はあまり感じなかったが、歳を取るとオブジェクト指向プログラミングの有難みをすごく感じる。
発注情報を管理するクラスとか、板状況を格納するクラスとか、何でもクラス化してちょっとずつ作っていけるのが良い。

W TOKYO  2023/07/01(土) 11:22:04
 IPOで当選した[9159]W TOKYOは初値売却で40万円ほどの利益。最近当選が少ないが、たまにはこういうのも無いと申込を続けるモチベーションが続かないね。

3月の権利確定の優待が沢山届いている。優待クロスでQUOカードを集中的に取ったのだが、さっき在庫を数えてみたら500円が27枚、1000円が95枚、2000円が4枚、3000円が12枚あった。あと、お米券も48枚、ギフト券も2万円分ある。これで半年くらいは持つかな。QUOカードはコンビニでのちょっとした買い物にも使うが、マツモトキヨシで使えるので、米を買ったりもできる。ギフトカードも近所のスーパーで使える。とにかく米がすぐ無くなるのよね。米自体も優待で送られてくる。

今年前半の利益は2700万円ほどであった。しかし、ポジションが混在しているので、どこまでがトレードの利益で、どこまでが単に株が上がっただけかわからんな。
以前から継続して、現物株、投信、REIT、米株で合わせて5200万円くらい買いポジションがあるので、最近の株高の恩恵を受けているのは間違いないだろう。

昨年の相場の収支は5300万くらいのマイナスなのだが、これはFTXの破綻を全損として計算した収支である。しかし、最近のニュースをみると、戻って来る目も出てきたかもしれない。最近の円安で評価も膨らんでおり、いま戻ってきたら9100万円くらいになる。7月中に今後の方針についてアナウンスがあるらしい。

裁定機会  2023/06/26(月) 07:09:21
 数日前、仮想通貨のある交換ルートに裁定機会が生じていることに気が付いた。もう仮想通貨にはあまり資金を置いていないのだが、2500ドル分ほど用意して、そのルートで17回転させたら4600ドルくらいまで増えた。裁定機会は30分程度で消滅したので、それ以上は何もできず。
仮想通貨の世界もかなり効率化されてきており、最近はすぐ儲かるような裁定機会にはめったに出会わないので、こういうのは久々であった。後からトランザクションを検索したところ、全世界で、この裁定機会に気づいて同じ取引をしたのは自分以外に2人いたようである。

6月の優待クロスは、最終的に、[2206]江崎グリコ、[2702]マクドナルド、[3097]物語コーポ、[3197]すかいらーく、[3950]ザ・パック、[7532]PPIH、を確保した。すかいらーくは苦労したが何とか1名義あたり1000株ずつ確保できた。
一般信用の争奪戦は最近ますます激化してきており、美味しいのもあと1年くらいかもしれない。優待に長期条件を課す所も増えてきており、いずれは端株で株主番号を固定しつつ空クロスで長期条件を満たす手法が主流になるだろう。そうなると、新たに始めるにはハードルがかなり高くなるので争奪戦も落ち着いてくるかもしれない。

デーモン  2023/06/21(水) 15:50:35
 外電速報が停止してしまったが、しばらく原因追及に時間がかかった。
外電速報に限らず、仮想通貨や株式など、あらゆるデータの自動更新に用いるために、スケジューリングプログラムを自作してデーモンとして動かしているのだが、それが止まっていた。
よく調べると、サーバーが障害のために再起動したようだ。
このスケジューリングプログラムは、タスクをグループ化してグループごとにシーケンシャルに実行したり、渋滞したタスクは最新のもの以外を自動で取り消したり、より細かいスケジュール管理ができるようにしたりで、普通のcronよりかなり高性能化したものである。
もう5年間以上、安定して動いていたので、起動の仕方を思い出すのにちょっと時間がかかった。
しかし、スケジューリングプログラムは再起動したのだが、タスクの中には止まっているものが多い。原因追及が面倒くさそうである。

ところで、6月優待クロスは、[2702]マクドナルド、[3097]物語コーポレーション、[3197]すかいらーく、を確保した。ただ、すかいらーくは目標株数の半分しか確保できていない。家族でよく使うので、全名義1000株ずつ欲しいところ。

IPOは[9159]W TOKYOに100株当選。利益50万円くらいまで狙えるみたいだが、どうなるか。

ロングショート  2023/06/19(月) 01:59:59
 株のロングショートは、多分優位性があるので、しばらくはこれを中心にやって行く事にする。
一時は1億円くらいまでポジションが膨らんでやばかったが、もう少し仕掛けどころを厳選すればそこまで酷いことにはならんと思う。
まぁ、1億円っていっても、信用金利がもったいないので買いは現物にしてるからで、買いも信用で建てればそこまで資金は要らないが。
この週末はペアの探索を行った。過去データで中期相関が短期相関に比べて相対的に高いペアを探索し、業種が全然違うなど、明らかに偶然の結果だと思われるものを排除し、いくつかペアを入れ替えた。

ところで、株高であまり注目されてないが、中国は不動産バブルが崩壊して、景気にもかなり影響が出ているように見える。意外と危ないかも。

金、原油、FX  2023/06/14(水) 11:52:03
 ちょっと融資の関係の事情があり、ポジションを整理することになった(銀行がハイリスク投資を好まないため)。
金は3年前から限日取引で買っていたのを全部仕切り。2000円幅くらい取れて660万円くらいの利益。
原油は1年前からCFDで買っていたのを損切り。マイナス400万円くらい。
FXは2年前からクリック365で色々な通貨を買っていたのを仕切って1700万円くらいの利益。

あとついでに株も色々と落とした。しかし長期投資で考えている、伊藤忠、キヤノン、住友電工、オリックス、KDDIあたりは切れんなぁ。切ったらもう買えない気がする。

今年の利益は現時点で2300万円ほどとなった。

ロングショート  2023/06/08(木) 23:32:18
 株の利益のうちロングショートの利益を計算したところ、+227万円であった。
ただし、片張りの買いも混在しているので完全な分離はできていない。
一時期めちゃめちゃ逆行して難平対処でポジションが1億円を超えていたが、なんとかプラテンした。
このままではいつか酷いことになりそうなので、仕掛けどころはもっと厳選せんといかんな。

新しい10 昔の10  100新しい方へ移動 100昔へ移動

一覧へ戻る