Drawings
Read, create, copy, update and delete drawings on the chart.
1aa5e22). Descriptions are the exact text the model receives.drawings_list
List every committed chart drawing. Anchors use timestamp and price; rendering indexes and interaction previews are not exposed.
Parameters
This tool takes no input.
JSON Schema
…drawing_create
Create a committed chart drawing using a supported kind and an existing paneId. Required anchor count by kind — 1: horizontal-line, horizontal-ray, vertical-line, cross-line; 2: trend-line, ray, extended-line, fib-retracement, rectangle, arrow, info-line, regression-channel; 3: parallel-channel, flat-line, disjoint-channel. horizontal-line anchors require only price; all other anchors require tradingDate in YYYY-MM-DD format and price. labels is the complete text model keyed by the rendered line or area index.
Parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
kind | enum | Yes | one of "trend-line", "ray", "extended-line", "fib-retracement", "rectangle", "arrow", "horizontal-line", "horizontal-ray", "vertical-line", "cross-line", "info-line", "parallel-channel", "regression-channel", "flat-line", "disjoint-channel" | |
paneId | string | Yes | min length 1 | |
anchors | object[] | Yes | min items 1; max items 3 | |
anchors[].tradingDate | string | — | pattern ^\d{4}-\d{2}-\d{2}$ | |
anchors[].price | number | Yes | — | |
style | object | — | — | |
style.stroke | enum | — | one of "#4A90D9", "#7C6FCD", "#C08457", "#8B5E83", "#9CA3AF" | |
style.strokeWidth | number | — | > 0 | |
style.strokeStyle | enum | — | one of "solid", "dashed", "dotted" | |
style.fill | enum | — | one of "#4A90D9", "#7C6FCD", "#C08457", "#8B5E83", "#9CA3AF" | |
style.fillOpacity | number | — | ≥ 0; ≤ 1 | |
style.pointRadius | number | — | > 0 | |
style.textColor | enum | — | one of "#4A90D9", "#7C6FCD", "#C08457", "#8B5E83", "#9CA3AF" | |
style.fontSize | number | — | > 0 | |
labels | object | — | closed | |
labels.line | record | — | closed | 键为渲染输出的线段或区域序号,从 "0" 起的字符串数字。 |
labels.line.<n>.text | string | — | — | 标签文本。使用字面量 \n 作为唯一换行控制码。 |
labels.line.<n>.position | enum | — | one of "start", "center", "end" | |
labels.area | record | — | closed | 键为渲染输出的线段或区域序号,从 "0" 起的字符串数字。 |
labels.area.<n>.text | string | — | — | 标签文本。使用字面量 \n 作为唯一换行控制码。 |
labels.area.<n>.position | enum | — | one of "start", "center", "end" | |
visible | boolean | — | — | |
locked | boolean | — | — | |
zIndex | number | — | — |
Minimal input · Required fields only; placeholders are derived from the schema.
{
"kind": "trend-line",
"paneId": "<paneId>",
"anchors": [
{
"price": 0
}
]
}JSON Schema
…drawings_copy
Copy drawings by ID with a shared screen offset. Selects visible, unlocked copies; the entire group is one undo step.
Parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
drawingIds | string[] | Yes | min items 1; item min length 1 |
Minimal input · Required fields only; placeholders are derived from the schema.
{
"drawingIds": [
"<drawingId>"
]
}JSON Schema
…drawing_update
Update a committed chart drawing by id. labels replaces the complete text model; obtain it from drawings_list before changing it. Supply at least one patch field. Required anchor count by kind — 1: horizontal-line, horizontal-ray, vertical-line, cross-line; 2: trend-line, ray, extended-line, fib-retracement, rectangle, arrow, info-line, regression-channel; 3: parallel-channel, flat-line, disjoint-channel. horizontal-line anchors require only price; all other anchors require tradingDate in YYYY-MM-DD format and price.
Parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
drawingId | string | Yes | min length 1 | |
patch | object | Yes | — | |
patch.anchors | object[] | — | min items 1; max items 3 | |
patch.anchors[].tradingDate | string | — | pattern ^\d{4}-\d{2}-\d{2}$ | |
patch.anchors[].price | number | — | — | |
patch.style | object | — | — | |
patch.style.stroke | enum | — | one of "#4A90D9", "#7C6FCD", "#C08457", "#8B5E83", "#9CA3AF" | |
patch.style.strokeWidth | number | — | > 0 | |
patch.style.strokeStyle | enum | — | one of "solid", "dashed", "dotted" | |
patch.style.fill | enum | — | one of "#4A90D9", "#7C6FCD", "#C08457", "#8B5E83", "#9CA3AF" | |
patch.style.fillOpacity | number | — | ≥ 0; ≤ 1 | |
patch.style.pointRadius | number | — | > 0 | |
patch.style.textColor | enum | — | one of "#4A90D9", "#7C6FCD", "#C08457", "#8B5E83", "#9CA3AF" | |
patch.style.fontSize | number | — | > 0 | |
patch.labels | object | — | closed | |
patch.labels.line | record | — | closed | 键为渲染输出的线段或区域序号,从 "0" 起的字符串数字。 |
patch.labels.area | record | — | closed | 键为渲染输出的线段或区域序号,从 "0" 起的字符串数字。 |
patch.visible | boolean | — | — | |
patch.locked | boolean | — | — | |
patch.zIndex | number | — | — |
Minimal input · Required fields only; placeholders are derived from the schema.
{
"drawingId": "<drawingId>",
"patch": {}
}JSON Schema
…drawing_delete
Delete one committed chart drawing by id. Returns whether a drawing was removed.
Parameters
| Name | Type | Required | Constraints | Description |
|---|---|---|---|---|
drawingId | string | Yes | min length 1 |
Minimal input · Required fields only; placeholders are derived from the schema.
{
"drawingId": "<drawingId>"
}JSON Schema
…drawings_clear
Delete every committed chart drawing. Interaction previews are not persisted and are unaffected.
Parameters
This tool takes no input.
JSON Schema
…