*

PHPで仮想通貨APIを処理するときの注意

Web APIは基本的にJavascriptで処理させることを想定していますが、これまでのようにPHPで処理することもできます。

一般的なツイッターAPIやGoogleAPIの場合、サーバー上で処理ができるPHPの方が有利そうですが、仮想通貨のトレード系APIの場合、ちょっとした問題が発生します。

サーバーが連続アクセスに対して拒絶反応をする

一般的なサーバーはDos対策がされているので、同一IPからのアクセスは一定時間の間に上限があります。それ以上アクセスしようとすると503エラーかアクセス拒否になります。

自動売買の場合、しょっちゅう計算フラグを立てる必要があるため、ここら辺がネックになります。

MT4のティックのように更新しようとするとここらへんで引っかかります。

MT4からDosした場合、セッション、クッキーの挙動がおかしくなる

MT4から自サーバーにウェブリクエスト -> 自サーバーから取引所に送信 

という方法を試しにとったのですが、この方法をとるとPHPのスーパーグローバル変数の挙動がおかしくなることがあることがわかりました。

今までMT4とセッション処理を組み合わせたことがなかったので気づきませんでしたが、MT4からウェブリクエストするとサーバー側はブラウザではないと認識して(当たり前ですが)セッションの挙動がおかしくなるようです。

セッションは別として、クッキーはブラウザに保存されるので、
当たり前と言えば当たり前ですよね。

これが何が問題なのかというと、セッション、クッキーが使えないことによって
「前にトレードした時間から何秒以内はトレードしない」
という条件文が使えなくなります。

サーバー側に値を保存したまま、ページを更新するには、セッションかクッキーかデータベースが必要です。

しかし、たったこれだけのためにデータベースを使うというのも汎用性が失われるだけだと思います。

解決策

せっかくここまで作ったので、メール送信が簡単にできるPHPを捨てるというのは結構もったいないと感じたりします。(配布するときにはやっぱりJavascriptの方が楽なんですけどね)

そこでDosのようになってしまう解決策をかるーく考察しました。

ローカルPCでPHPを動かす

これで99割解決です。(99割はネタですよ、もちろん)

自ローカルPCでPHPを動かす環境(XAMPPとか)を整えて、そこから直接取引所にアクセスすればいいのです。

長期的な自動売買をする場合はVPS上にPHP動作環境を入れるという、ホスティング会社に誤解されかねないような
方法もありだと思います。(最近はVPSでWEBサーバーとかもあるからね、多少はね。)

まぁ、しかし、開発者=利用者のときは良いですが、ソフトを配布する際にはハードルが高くなりそうですね。

MT4によるフラグをやめてブラウザでF5を自動化する

MT4によるアクセスでPHPを連続稼働させるというのが、普通じゃないといえば普通じゃないので、
ローカルPCからブラウザ経由で処理します。

これならセッションもクッキーも使えますし、自動化もUWSCを使えばそんなに難しくありません。

欠点は、自動売買している間はそのブラウザが使えなくなるということくらいでしょうか。
(UWSC使いはIEを使うことしか頭にないですが、ChromeやFirefoxの拡張機能にはF5アタックに近いツールがあるので、それを使う方が早いですね。)

Dosツールをお持ちの方はそちらを使ってどうぞ。(なんで持ってるんですかね~)

Message

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

このコメントはWEBに公開されるので、問い合わせ等はメールでお願いします。

関連記事

ZAIFがAPIの信用取引始めるって言うけれど…

今までZAIFはAPIでの信用取引ができませんでしたが、今月の上旬からできるようになったそうです。

記事を読む

ライトコインLTCのアービトラージ取引結果 binance vs poloniex

今回はライトコインのアービトラージ結果です。 最初はレート差1USDで実行したのですが、まったくト

記事を読む

独自のビットコイン決済システムを作って手数料を0%にするやり方

オンラインショッピングなんかをやっているとビットコインで決済できた方が便利なことがあります。 pa

記事を読む

仮想通貨取引所のチャット音声自動読み上げシステムを作る5 音声読み上げに特化する

これまでの内容で ・取引所のチャット取得 ・音声読み上げAPIで音声ファイルを取得 ・AJAX

記事を読む

APIでコインチェック、ZAIF、bitFlyerのレートの比較&トレード 仮想通貨の自動売買開発⑧

公開:2017/7/11 今回は業者間アービトラージに向け、PUBLIC APIで取得したデー

記事を読む

 
  • ブログ管理人の横瀬兼元(ペンネーム)です。

    各トピックに対するコメントは各記事のコメント欄にお願いします。それ以外のご質問、ご相談などは
    infoあっとfxantenna.com
    まで
    私の偽物がいるらしいので偽物にご注意ください。
no image
【MQL4】外部ソフトなしで稼働するコピートレードツールを作る。その⑨

このシリーズは前回の投稿から1年以上あいている訳ですが、結構問い合わせ

no image
【一覧】外部ソフトなしで稼働するコピートレードツールを作る。

【MQL4】外部ソフトなしで稼働するコピートレードツールを作る。その1

no image
スマホから稼働中のEAを操作、チェックするアイディア【RDP以外で】

自動売買システムはVPSなどに設置することで24時間稼働させられますが

no image
【初心者向け】VPSでWebサーバー構築 (さくらVPSxUbuntu16.04)

今回はサーバーの構築について扱ってみようと思います。VPSを使った一般

no image
2018年中盤~の仮想通貨(ビットコイン)アービトラージの相場について

ちょくちょく「最近、ビットコインのアービトラージどうですか」という質問

→もっと見る

PAGE TOP ↑