{"slug":"trailing-stop-vs-trailing-stop-limit","qid":"trail_width_sensitivity","label":"When each trail width would first have been reached, same position, January to June 2022","post_title":"Trailing Stop vs Trailing Stop-Limit Orders","post_url":"/blog/trailing-stop-vs-trailing-stop-limit#q-trail_width_sensitivity","columns":["label","first_trigger_day","days_into_window","closes_at_or_below_trail"],"rows":[{"label":"5% trail","first_trigger_day":"Jan 6, 2022","days_into_window":3,"closes_at_or_below_trail":104},{"label":"8% trail","first_trigger_day":"Jan 19, 2022","days_into_window":16,"closes_at_or_below_trail":82},{"label":"10% trail","first_trigger_day":"Jan 21, 2022","days_into_window":18,"closes_at_or_below_trail":65},{"label":"15% trail","first_trigger_day":"Mar 14, 2022","days_into_window":70,"closes_at_or_below_trail":38},{"label":"20% trail","first_trigger_day":"May 12, 2022","days_into_window":129,"closes_at_or_below_trail":25}],"shape":"series","sql":"WITH daily AS\n(\n    SELECT\n        date,\n        toFloat64(any(close)) AS close_px\n    FROM global_markets.stocks_daily_aggs\n    WHERE ticker = 'AAPL'\n      AND date >= '2022-01-03'\n      AND date <  '2022-07-01'\n    GROUP BY date\n),\nmarked AS\n(\n    SELECT\n        date,\n        close_px,\n        max(close_px) OVER (ORDER BY date ASC ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS peak_close\n    FROM daily\n),\nwidths AS\n(\n    SELECT arrayJoin([5, 8, 10, 15, 20]) AS trail_pct\n)\nSELECT\n    concat(toString(w.trail_pct), '% trail')           AS label,\n    formatDateTime(min(m.date), '%b %e, %Y')           AS first_trigger_day,\n    dateDiff('day', toDate('2022-01-03'), min(m.date)) AS days_into_window,\n    count()                                            AS closes_at_or_below_trail\nFROM marked AS m\nCROSS JOIN widths AS w\nWHERE m.close_px <= m.peak_close * (1 - w.trail_pct / 100)\nGROUP BY w.trail_pct\nORDER BY w.trail_pct ASC","computed_at":"2026-10-08T15:25:17.120526+00:00","elapsed":0.265320073}