A plain-text message for trading instructions
Smart Syntax separates the account and symbol from the instructions. The first line is a header; the following lines contain commands. You can read and review the message directly, or prepare it with Signal Factory’s visual controls and code editor.
BTCUSDT on My_API_Key
market long 0.01 sl off 2% tp off 5%My_API_Key is the exact label of a saved API key. This requests a buy of 0.01 BTC with SL/TP on a compatible market. Protection handling depends on the exchange. Requesting an entry and protection together does not guarantee atomic placement or a specific fill price.
Choose the quantity deliberately
50% uses half the total quote balance, converted to quantity at the price used for sizing. 50%% uses half the free balance. 50%p means half the position size when calculated. Setting leverage does not automatically multiply these quantities. See Market for risk sizing and protection coverage.
State the price reference
Use off for an offset and at or @ for an explicit price. Entry-relative values still need the command’s prefix, such as sl off e2%. Take profit also supports risk/reward notation when a stop reference exists. The Syntax Reference describes the complete rules.
One header can target several saved keys
BTCUSDT on Key_A, Key_B
balanceThe parser expands this into one block for each saved key. Each account supplies its own funds and market configuration. More headers create more blocks; a blank line alone does not create one. Commands are not a transaction across accounts. Put comments on their own lines beginning with //, after the header.
Orders, targets and cancellation
Limit requests an order at a chosen price; it can fill immediately if it crosses the market. Position requests a target at market. Cancel removes matching open orders, not fills or positions. These operations have distinct effects.
Check the result
Readable syntax still needs validation. Unknown or misplaced tokens can be ignored, and commands can continue after an execution error. Inspect each result and the exchange state; a timeout does not prove that nothing ran.
