How it works

Each enabled pair has its own cycle. TideBot records whether that pair is idle, holding spot, waiting on Rule A and Rule B, or paused because Rule A has hit its cap.

The four states on a pair

  • idle

    Nothing open. The next action is a first buy, using 100% of the USDT allocated to this pair.

  • in_position

    Spot is held. The high since entry moves up, and the trailing stop stays a fixed percent under that high.

  • flat_armed

    The stop sold. Rule A waits under the stop price. Rule B waits just above it. The first fill wins.

  • flat_capped

    Rule A has filled as many times as the cap allows. Automatic dip buys stop until you force a new entry. Rule B fills did not count toward that cap.

Transition map

idle → in_position
first buy, or a force re-entry, for the full allocation


in_position → in_position
a higher print lifts the trailing stop


in_position → flat_armed
price trades at or under the trailing stop, then TideBot sells


flat_armed → in_position
Rule A or Rule B fills first and cancels the other


flat_armed → flat_capped
the next stop would be another Rule A, and the Rule A count is already at the max


What the cycle will not do

No second buy while holding

If SOL is already in position, TideBot waits. It does not average down until the trail sells.

Force re-entry is manual

From flat, you can buy again at the current price. That buy uses the full remaining allocation and sets the Rule A count back to zero.

Pairs stay separate

A stop on BTC does not change the ETH cycle, its allocation, or its Rule A count.

Trader account

Turn on a pair and set its allocation

Create an account, save a Binance spot key, enable a listed pair, and decide how much of that coin TideBot may trade. Trailing percent, Rule A size, and the Rule A cap are set on that pair.