指値で注文したのに、明細ではテイカー手数料が引かれていた。これは必ずしも処理の誤りではない。指値は価格の上限や下限を指定する注文であり、板に並んで待つことを保証する注文ではないからだ。
既存の注文とすぐに取引できる価格を指定すれば、指値でも流動性を取りに行く側になる。そこで登場するのがPost Only、つまり板へ置くことを条件とする注文だ。ただし安い手数料だけを見ると、拒否や未約定、値動きに取り残される費用を見落とす。本稿では架空の価格と料率で比較する。
指値とメイカーは同じ意味ではない
最良買い気配が100円、最良売り気配が101円の市場を考える。101円以下なら買ってよいという買い指値を出すと、101円の売り注文とすぐに取引できる。この注文は価格を限定しているが、既に存在する流動性を消費するため、一般にテイカー側となる。
100円の買い指値なら、売り手がその価格へ来るまで待つ形になり得る。板へ残ってから別の注文に取引される部分がメイカー側だ。一つの注文が一部を即時約定し、残りを板へ置く場合には、約定部分ごとに扱いが違うこともある。

Post Onlyは「必ず安く買える」機能ではない
Coinbase Advancedの公式解説では、Post Onlyを付けた注文が到着時に一部でも即時約定する場合、注文全体が拒否されると説明されている。これにより、意図せずテイカーとして成立することを避ける。ただし、拒否された注文は買いポジションを作らない。
取引所によって、拒否、取消し、価格調整などの仕様や選択肢が異なる可能性がある。機能名だけで同じ動作と判断せず、対象商品と注文オプションの説明を確認する。特定の取引所へ入金する推奨ではなく、仕様の違いを理解するための例である。
板へ置けた場合も、約定は保証されない。前に多数の注文があれば、同じ価格で取引が起きても自分の順番へ届かない。価格が触れたことと自分が約定したことを同一視すると、メイカー戦略のバックテストは過大評価されやすい。
送信中に気配が変わると結果も変わる
画面で売り気配101円を確認し、100円のPost Only買いを送ったとする。その途中に売り気配が100円へ下がれば、到着時の注文は即時約定可能な価格になる。送信時には板へ並ぶつもりでも、照合する時点の市場では条件が変わっている。
拒否が頻発したとき、単に通信が不安定なのか、価格が動いているのかを分けて記録する。拒否後に毎回同じ価格で再送しても、条件が変わらなければ約定しない。反対に価格を追いかけ続ければ、当初の期待した買値から離れていく。
手数料差を金額へ変換する
架空の料金として、メイカー0.02%、テイカー0.06%を考える。約定代金100万円なら片道200円と600円で、差は400円だ。料率は実際のサービスの料金ではなく説明用であり、売買の双方にどの費用がかかるかは別に計算する。
待ったことで買値が0.10%不利になるなら、その影響は100万円に対して約1000円となる。400円の手数料節約より大きい。もちろん待った結果、より有利に買える場合や、取引自体を見送れる場合もある。比べるべきは料率だけでなく、同じ売買意図についての総費用である。

約定した注文だけ比較すると偏る
Post Onlyが成立した取引だけを抜き出し、成行注文の全件と比べると条件がそろわない。上昇して置いていかれた買い注文は、メイカー側の約定一覧に残らない。一方、価格が下がって売りが流れ込んだ場面では買い指値が成立しやすい。
そこで、発注を決めた時点から全ての注文意図を記録する。約定、部分約定、拒否、取消し、期限切れ、未約定を残し、同じ評価時刻の価格と比較する。成立した往復だけを見れば、待つ戦略の不都合なケースが消えてしまう。
逆選択は「安く買えた後にさらに下がる」問題
買い指値が売りにぶつけられたのは、市場の評価が下がり始めたからかもしれない。スプレッドを節約できても、その直後に仲値が下がれば保有資産の評価は悪化する。これを、約定する場面が自分に不利な条件へ偏る逆選択の一例として考えられる。
約定直後、数秒後、一定時間後の仲値を保存し、自分の約定価格からどう動いたかを調べる。買いなら後の仲値が約定価格より高いほど有利、売りなら低いほど有利という符号でそろえる。ただし、後の仲値はその価格で決済できたことを意味しない。
手数料込みの約定後評価と、実際に決済した最終損益は別の指標として残す。長期の投資判断がよかったために最終利益が出ても、執行自体は不利だったということがある。売買判断の優位性と注文方法の質を分解して見たい。
取消し・再配置は無料の位置修正ではない
価格が一刻み動くたびに取消し、最良気配へ置き直すと、板の待ち順位を失う場合がある。前から待っていた注文の後ろへ並び直すため、見た目は最良価格でも成立しにくくなる。優先順位の規則や、変更時に順位を維持できる条件は市場ごとに確認する。
また取消し要求中にも約定する可能性がある。旧注文の取消しが確認される前に新注文を作れば、一時的に二つの買いが存在する。手数料を節約する小さな工夫が、数量管理の事故を起こしては意味がない。旧注文と新注文の関係を追跡する必要がある。
部分約定の残りをどうするかを先に決める
1000単位買いたいところ、300単位だけ約定した場合、残りを待つのか、取り消すのか、テイカーで埋めるのかで総費用が変わる。全量が同じ料率・価格で成立する前提ではなく、約定部分を加重して計算する。
ペア取引では一方だけ成立すると方向リスクが生じる。片側の手数料節約より、両側がそろわない時間のリスクが大きい場合もある。どれだけ待つか、片側だけの最大数量、許容する価格差を事前に決める。メイカー指定だけでペアの同時成立を保証できない。
損切りまでメイカーにこだわらない
新規注文なら、約定しなければ取引を見送る選択ができる。一方、既に損失が拡大している建玉を閉じる場面では、未約定の意味が違う。決済注文が板に残ったまま価格が遠ざかると、手数料差より大きな損失が生じ得る。
注文条件は目的によって分ける。価格を守ることと、数量を確実に減らすことは同時に達成できない場合がある。成行でも価格は保証されず、指値でも成立は保証されない。その交換条件を理解したうえで、通常時と緊急時の執行ルールを用意する。
バックテストに必要な最低限の情報
送信時と到着想定時の気配、指値価格、注文量、板へ置けたか、約定量、取消し確認、費用を記録する。約定価格だけのローソク足では、Post Onlyが拒否されたか、前に何株並んでいたかまで分からない。分からない部分は仮定として明示する。
本番前の小額検証では、手数料率が想定どおりかに加え、拒否率、全量約定率、平均待機時間、約定後の価格変化を観測する。単にメイカー比率が高いことを成功条件にしない。何も買えなければメイカー手数料も払わないが、それで運用目的を達成したとは限らない。
メイカー比率を上げるだけの目標を置かない
評価項目をメイカー比率だけにすると、ほとんど成立しない遠い価格へ注文を置く方法がよく見えてしまう。必要な量を期限までに取得することが目的なら、それでは達成できない。メイカー比率、全量完了率、予定価格からの差、約定後の評価を一緒に確認する必要がある。
例えば100件の意図のうち10件だけ約定し、その全てがメイカーなら、約定部分のメイカー比率は100%だ。しかし残り90件で何が起きたかを示さなければ、執行戦略全体の評価にはならない。10件の手数料が安かったことと、100件の売買意図を有利に実行したことを分けて考える。
料率が変わる条件も保存する
取引量、商品、口座区分などで手数料体系が変わる場合、過去の全取引へ現在の最安料率を適用すると成績が過大になる。実際に適用された料率と金額を保存し、シミュレーションではその時点で利用できる条件を使う。期間限定の優遇を長期間続く前提にしない。
リベートがある場合も、それだけを利益源として大量に売買すれば、価格リスクや費用が増える可能性がある。手数料の符号がマイナスでも、取引全体の期待値がプラスとは限らない。約定後の不利な価格変化と未約定を含め、受け取った金額以上の損失を負っていないか確認する。
比較する相手を固定する
同じ買い注文でも、反発を待つ戦略と上昇の加速へ追随する戦略では未約定の意味が違う。前者では待機が価格条件の一部になり得るが、後者では待っている間にシグナルの優位性が消える可能性がある。注文機能だけを独立して評価せず、シグナル発生から何秒までを有効な取引とするかをそろえる。期限後の偶然の約定を成功例へ数えないことも比較の条件になる。
「成行ならどうなったか」を比較するなら、シグナルを出した同じ時刻、同じ数量、同じ評価期限を使う。後から最もよい時刻を選んだ成行価格と比べたり、メイカー側だけ都合よく長く待たせたりすると、注文方法の比較ではなくなる。
取引しないという第三の選択肢もある。スプレッドや流動性が悪い場面で、無理にメイカーかテイカーを選ぶ必要はない。期待する値幅が総費用に対して十分でなければ、注文しない条件を設ける方が設計として自然な場合がある。
Post Onlyは、メイカーとしての執行を条件にするための道具である。低い手数料を確実な利益へ変える装置ではない。拒否や未約定まで含めて全ての注文を評価し、目的に応じて待つ価値を測ることが、実用的なメイカー運用につながる。
参考:Coinbase Advancedの指値・Post Only公式説明。料率と価格例は独自の仮定で、同サービスの実際の料金を示していない。


コメント