2022年1月25日 社内情報の取得が一番の関門

頑張って毎日更新しているが、いつまで続くだろうか。

  • Docker + uWSGI
  • API GatewayのIP制限
  • BTCの自動トレード

DockerでuWSGIのデーモン化に苦戦中

色々と振り回されているが、なんとかかんとか開発を進めている。現在Dockerfile上にCMDでuwsgiを実行するようにしているのだが、設定ファイルをちょっといじってやればデーモン化することも可能なようだ。

uWSGI入門 | Python学習講座

まぁ正直デーモン化するメリットがあるのかなと言われるとかなり微妙なサーバなのだが、とはいえ直接実行というのもねぇ。まぁさらっとできるならやっとこうかな……と思ったのだけれど、めっちゃエラー出る。マジかい。調べてみると、ログのパーミッションが怪しい感じはする。

うーん……なんかもういいかなぁ感もある……。

API GatewayのIP制限

AWS SAMでAPI Gatewayのリソースポリシーを設定してみた | DevelopersIO

例によってクラスメソッドさんが記事を出してくれていたので、問題なくできた。Swaggerの記述は初めて見るとぎょっとするが、以前もAPI Gatewayでゴチャゴチャやっていた時に使っていたこともあり、すんなりとできた。

むしろ苦戦したのは、「社内ネットワークのIPアドレスの範囲なんだよ!」というほうで、当たり前だがググっても出てこないし、社内文書はConfluenceなのだが検索機能が貧弱故に情報がめちゃくちゃ探しづらいのだ……。聴きまわって、識者からここに情報があると教えてもらえて助かった……。疲れた……。

Google検索のこと色々愚痴っている今日この頃だけれど、こうして考えると、やっぱり偉大だよね、Google。

BTCのトレードプログラムを改修

なぜか今月に入ってから、Bitbank APIを使って作成したBTCの自動トレードプログラムが止まりまくっている。あまりにも止まるので、重い腰を上げて久しぶりに修正を加えることにした。

止まり方はいやらしくて、どうもpythonプログラムのコードのどこか一行……恐らくはBitbank APIを使っているところ……で止まり、うんともすんともいわず、しかしプロセスは生きているので死活監視のプログラムもきかない……という感じだ。

しかも本体のトレードプログラムは、割とスパゲッティで作成者の僕にもよくわからん状態である😂

なので、なるだけ本体のプログラムに手を付けず、場当たり的な対応でなんとかする必要があった。

考えた結果、いままで1プロセスの間に連続して取引を実行していたのを、1プロセスでは1トレードとして、それをごく単純なシェルスクリプトで無限ループさせることにした。で、1プロセス、つまり1トレードの起動時間が一定以上だったらkillして再度プロセス起動。

これによって、トレード間隔は以前より少し長くなってしまったのだが、まぁ実用として十分だと思っている。これでなんとかなったと思うが、とりあえず様子を見たい。

関連記事

スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。