{
 "id": "three_line_strike_bullish",
 "name": "Bullish three-line strike",
 "family": "candlestick",
 "direction": "bullish",
 "kind": "continuation",
 "page": "https://patternswizard.com/three-line-strike-candlestick-pattern/",
 "data": "https://patternswizard.com/data/patterns/three_line_strike_bullish.json",
 "rule": "In an uptrend: three white candles closing higher, each opening inside or near the previous body, then a black candle opening above the third close and closing below the first open.",
 "trade_rule": "Entry by an order at the trigger level, filled at the open when a bar opens beyond it. Exit at the stop or the target, or at the open when a bar opens beyond either one; otherwise at the close after 100 bars. When one bar touches both the stop and the target, the loss is counted. No fees or slippage. A result above +2 R or below −1 R means a bar opened past the target or the stop, and the trade was closed at that open.",
 "generated_at": "2026-11-05T17:19:18+00:00",
 "code_version": "c2a1683f",
 "results": [
  {
   "market": "crypto",
   "tf": "1h",
   "side": "all",
   "n": 291,
   "symbols": 200,
   "first": "2017-11-02",
   "last": "2026-09-26",
   "win10": 0.4742268,
   "baseWin10": 0.48491715,
   "excess10": {
    "mean": -0.00463811,
    "low": -0.01043204,
    "high": 0.00052172,
    "q": 0.40400559,
    "stable": false
   },
   "trade": {
    "n": 37,
    "winRate": 0.27027027,
    "expectancyR": 0.06246682,
    "baseWinRate": 0.17391304,
    "baseExpectancyR": -0.47826087,
    "timeoutRate": 0.16216216,
    "triggeredRate": 0.12714777,
    "invalidatedRate": 0.82817869,
    "hits": 10,
    "stops": 21,
    "triggered": 37
   },
   "timing": {
    "bars_to_target": [
     9.25,
     22,
     26.75
    ],
    "bars_to_stop": [
     6,
     16,
     22
    ],
    "bars_in_trade": [
     6,
     19,
     46
    ],
    "mfe_r": [
     0.40476191,
     1.08214283,
     2.07142854
    ],
    "stopped_after_1r": 0.28571429,
    "bars_to_entry": [
     2,
     4,
     9
    ],
    "range_pct": [
     0.02507035,
     0.03550296,
     0.05847124
    ],
    "range_atr": [
     1.76097494,
     2.42335939,
     3.23520195
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 50451,
   "verdict": "no_edge",
   "verdictTrade": "no_edge"
  },
  {
   "market": "crypto",
   "tf": "4h",
   "side": "all",
   "n": 49,
   "symbols": 46,
   "first": "2020-08-02",
   "last": "2026-09-02",
   "win10": 0.55102041,
   "baseWin10": 0.47608983,
   "excess10": {
    "mean": -0.00953438,
    "low": -0.02296925,
    "high": 0.00770223,
    "q": 0.62237076,
    "stable": true
   },
   "trade": {
    "n": 12,
    "winRate": 0.41666667,
    "expectancyR": 0.25,
    "baseWinRate": 0.25,
    "baseExpectancyR": -0.19741983,
    "timeoutRate": 0,
    "triggeredRate": 0.24489796,
    "invalidatedRate": 0.71428571,
    "hits": 5,
    "stops": 7,
    "triggered": 12
   },
   "timing": {
    "bars_to_target": [
     15,
     19,
     24
    ],
    "bars_to_stop": [
     0.5,
     5,
     10
    ],
    "bars_in_trade": [
     4,
     11.5,
     16.75
    ],
    "mfe_r": [
     0.16947978,
     0.89438927,
     2.02944851
    ],
    "stopped_after_1r": 0,
    "bars_to_entry": [
     1,
     3.5,
     9.5
    ],
    "range_pct": [
     0.05154639,
     0.08026756,
     0.11710381
    ],
    "range_atr": [
     1.99352753,
     2.46875,
     2.98182321
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 74924,
   "verdict": "no_edge",
   "verdictTrade": "insufficient_data"
  },
  {
   "market": "crypto",
   "tf": "1d",
   "side": "all",
   "n": 7,
   "symbols": 7,
   "first": "2023-08-02",
   "last": "2026-01-10",
   "win10": 0.42857143,
   "baseWin10": 0.44154932,
   "excess10": {
    "mean": -0.07354348,
    "low": -0.18865254,
    "high": 0.01420104,
    "q": null,
    "stable": false
   },
   "trade": {
    "n": 0,
    "winRate": null,
    "expectancyR": null,
    "baseWinRate": null,
    "baseExpectancyR": null,
    "timeoutRate": null,
    "triggeredRate": 0,
    "invalidatedRate": 1,
    "hits": null,
    "stops": null,
    "triggered": 0
   },
   "timing": {
    "bars_to_entry": null,
    "range_pct": [
     0.09403281,
     0.15703192,
     0.23641763
    ],
    "range_atr": [
     1.85948133,
     1.96817589,
     2.14784288
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 85997,
   "verdict": "insufficient_data",
   "verdictTrade": "insufficient_data"
  },
  {
   "market": "stocks",
   "tf": "1d",
   "side": "all",
   "n": 202,
   "symbols": 192,
   "first": "1982-07-16",
   "last": "2026-09-01",
   "win10": 0.51485149,
   "baseWin10": 0.54290977,
   "excess10": {
    "mean": 0.00144609,
    "low": -0.0083752,
    "high": 0.01215639,
    "q": 0.92476452,
    "stable": false
   },
   "trade": {
    "n": 31,
    "winRate": 0.41935484,
    "expectancyR": 0.35504212,
    "baseWinRate": 0.38095238,
    "baseExpectancyR": 0.14201871,
    "timeoutRate": 0.06451613,
    "triggeredRate": 0.15346535,
    "invalidatedRate": 0.84158416,
    "hits": 13,
    "stops": 16,
    "triggered": 31
   },
   "timing": {
    "bars_to_target": [
     7,
     10,
     13
    ],
    "bars_to_stop": [
     2,
     3,
     15.75
    ],
    "bars_in_trade": [
     3,
     10,
     18
    ],
    "mfe_r": [
     0.20473441,
     1.56435597,
     2.17156732
    ],
    "stopped_after_1r": 0.0625,
    "bars_to_entry": [
     2,
     3,
     3.5
    ],
    "range_pct": [
     0.0327845,
     0.04448964,
     0.06238265
    ],
    "range_atr": [
     1.64060548,
     1.96425146,
     2.29253566
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 36234,
   "verdict": "no_edge",
   "verdictTrade": "no_edge"
  },
  {
   "market": "etf",
   "tf": "1d",
   "side": "all",
   "n": 4,
   "symbols": 4,
   "first": "2000-12-29",
   "last": "2025-07-15",
   "win10": 0.5,
   "baseWin10": 0.57197762,
   "excess10": {
    "mean": -0.00641731,
    "low": null,
    "high": null,
    "q": null,
    "stable": false
   },
   "trade": {
    "n": 0,
    "winRate": null,
    "expectancyR": null,
    "baseWinRate": null,
    "baseExpectancyR": null,
    "timeoutRate": null,
    "triggeredRate": 0,
    "invalidatedRate": 1,
    "hits": null,
    "stops": null,
    "triggered": 0
   },
   "timing": {
    "bars_to_entry": null,
    "range_pct": [
     0.0204411,
     0.02511725,
     0.02919388
    ],
    "range_atr": [
     1.41547203,
     1.69184476,
     2.11083791
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 63384,
   "verdict": "insufficient_data",
   "verdictTrade": "insufficient_data"
  },
  {
   "market": "indices",
   "tf": "1d",
   "side": "all",
   "n": 2,
   "symbols": 2,
   "first": "2020-12-09",
   "last": "2024-06-28",
   "win10": 1,
   "baseWin10": 0.59544817,
   "excess10": {
    "mean": 0.01483634,
    "low": null,
    "high": null,
    "q": null,
    "stable": true
   },
   "trade": {
    "n": 0,
    "winRate": null,
    "expectancyR": null,
    "baseWinRate": null,
    "baseExpectancyR": null,
    "timeoutRate": null,
    "triggeredRate": 0,
    "invalidatedRate": 1,
    "hits": null,
    "stops": null,
    "triggered": 0
   },
   "timing": {
    "bars_to_entry": null,
    "range_pct": [
     0.01699676,
     0.01987754,
     0.02275831
    ],
    "range_atr": [
     1.91586176,
     1.98445553,
     2.0530493
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 69118,
   "verdict": "insufficient_data",
   "verdictTrade": "insufficient_data"
  },
  {
   "market": "forex",
   "tf": "1d",
   "side": "all",
   "n": 1,
   "symbols": 1,
   "first": "2020-06-08",
   "last": "2020-06-08",
   "win10": 0,
   "baseWin10": 0.55173463,
   "excess10": {
    "mean": -0.00219532,
    "low": null,
    "high": null,
    "q": null,
    "stable": false
   },
   "trade": {
    "n": 0,
    "winRate": null,
    "expectancyR": null,
    "baseWinRate": null,
    "baseExpectancyR": null,
    "timeoutRate": null,
    "triggeredRate": 0,
    "invalidatedRate": 1,
    "hits": null,
    "stops": null,
    "triggered": 0
   },
   "timing": {
    "bars_to_entry": null,
    "range_pct": [
     0.01490417,
     0.01490417,
     0.01490417
    ],
    "range_atr": [
     2.51015186,
     2.51015186,
     2.51015186
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 88389,
   "verdict": "insufficient_data",
   "verdictTrade": "insufficient_data"
  },
  {
   "market": "commodities",
   "tf": "1d",
   "side": "all",
   "n": 5,
   "symbols": 4,
   "first": "2002-12-30",
   "last": "2026-02-02",
   "win10": 0.8,
   "baseWin10": 0.52364426,
   "excess10": {
    "mean": -0.01523342,
    "low": null,
    "high": null,
    "q": null,
    "stable": true
   },
   "trade": {
    "n": 0,
    "winRate": null,
    "expectancyR": null,
    "baseWinRate": null,
    "baseExpectancyR": null,
    "timeoutRate": null,
    "triggeredRate": 0,
    "invalidatedRate": 1,
    "hits": null,
    "stops": null,
    "triggered": 0
   },
   "timing": {
    "bars_to_entry": null,
    "range_pct": [
     0.0566058,
     0.06238184,
     0.07165608
    ],
    "range_atr": [
     1.82896984,
     1.83215606,
     2.12251139
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 15325,
   "verdict": "insufficient_data",
   "verdictTrade": "insufficient_data"
  },
  {
   "market": "all",
   "tf": "1d",
   "side": "all",
   "n": 221,
   "symbols": 210,
   "first": "1982-07-16",
   "last": "2026-09-01",
   "win10": 0.52036199,
   "baseWin10": 0.5403049,
   "excess10": {
    "mean": -0.00134414,
    "low": -0.01055446,
    "high": 0.00918915,
    "q": 0.92718336,
    "stable": false
   },
   "trade": {
    "n": 31,
    "winRate": 0.41935484,
    "expectancyR": 0.35504212,
    "baseWinRate": 0.38095238,
    "baseExpectancyR": 0.14201871,
    "timeoutRate": 0.06451613,
    "triggeredRate": 0.14027149,
    "invalidatedRate": 0.85520362,
    "hits": 13,
    "stops": 16,
    "triggered": 31
   },
   "timing": {
    "bars_to_target": [
     7,
     10,
     13
    ],
    "bars_to_stop": [
     2,
     3,
     15.75
    ],
    "bars_in_trade": [
     3,
     10,
     18
    ],
    "mfe_r": [
     0.20473441,
     1.56435597,
     2.17156732
    ],
    "stopped_after_1r": 0.0625,
    "bars_to_entry": [
     2,
     3,
     3.5
    ],
    "range_pct": [
     0.03220266,
     0.04464288,
     0.06621075
    ],
    "range_atr": [
     1.64822876,
     1.96117246,
     2.29114985
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 38362,
   "verdict": "no_edge",
   "verdictTrade": "no_edge"
  },
  {
   "market": "stocks",
   "tf": "1w",
   "side": "all",
   "n": 110,
   "symbols": 105,
   "first": "1986-01-06",
   "last": "2026-06-15",
   "win10": 0.44545455,
   "baseWin10": 0.57714781,
   "excess10": {
    "mean": -0.00479992,
    "low": -0.03480826,
    "high": 0.02393303,
    "q": 0.91795368,
    "stable": true
   },
   "trade": {
    "n": 15,
    "winRate": 0.26666667,
    "expectancyR": -0.20264922,
    "baseWinRate": 0.08333333,
    "baseExpectancyR": -0.75,
    "timeoutRate": 0,
    "triggeredRate": 0.13636364,
    "invalidatedRate": 0.85454545,
    "hits": 4,
    "stops": 11,
    "triggered": 15
   },
   "timing": {
    "bars_to_target": [
     8.5,
     15,
     34.75
    ],
    "bars_to_stop": [
     5.5,
     10,
     11
    ],
    "bars_in_trade": [
     6.5,
     10,
     12.5
    ],
    "mfe_r": [
     0.46542746,
     0.68086463,
     1.66521269
    ],
    "stopped_after_1r": 0.18181818,
    "bars_to_entry": [
     2.5,
     3,
     4.5
    ],
    "range_pct": [
     0.08612846,
     0.11736754,
     0.17981127
    ],
    "range_atr": [
     1.84150323,
     2.26992464,
     2.74533188
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 12529,
   "verdict": "no_edge",
   "verdictTrade": "insufficient_data"
  },
  {
   "market": "etf",
   "tf": "1w",
   "side": "all",
   "n": 6,
   "symbols": 5,
   "first": "2007-02-26",
   "last": "2019-04-15",
   "win10": 0.83333333,
   "baseWin10": 0.61427352,
   "excess10": {
    "mean": 0.04124826,
    "low": -0.03773131,
    "high": 0.12883916,
    "q": null,
    "stable": true
   },
   "trade": {
    "n": 2,
    "winRate": 0.5,
    "expectancyR": 0.5,
    "baseWinRate": 0,
    "baseExpectancyR": -1,
    "timeoutRate": 0,
    "triggeredRate": 0.33333333,
    "invalidatedRate": 0.66666667,
    "hits": 1,
    "stops": 1,
    "triggered": 2
   },
   "timing": {
    "bars_to_target": [
     3,
     3,
     3
    ],
    "bars_to_stop": [
     0,
     0,
     0
    ],
    "bars_in_trade": [
     0.75,
     1.5,
     2.25
    ],
    "mfe_r": [
     0.56018734,
     1.12037468,
     1.68056202
    ],
    "stopped_after_1r": 0,
    "bars_to_entry": [
     1.5,
     2,
     2.5
    ],
    "range_pct": [
     0.03829596,
     0.04956231,
     0.05981699
    ],
    "range_atr": [
     1.6034112,
     1.83509129,
     2.18025395
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 8493,
   "verdict": "insufficient_data",
   "verdictTrade": "insufficient_data"
  },
  {
   "market": "indices",
   "tf": "1w",
   "side": "all",
   "n": 4,
   "symbols": 4,
   "first": "2006-11-27",
   "last": "2026-03-02",
   "win10": 0.75,
   "baseWin10": 0.61193768,
   "excess10": {
    "mean": 0.00803333,
    "low": null,
    "high": null,
    "q": null,
    "stable": false
   },
   "trade": {
    "n": 1,
    "winRate": 0,
    "expectancyR": -1,
    "baseWinRate": 1,
    "baseExpectancyR": 2,
    "timeoutRate": 0,
    "triggeredRate": 0.25,
    "invalidatedRate": 0.75,
    "hits": 0,
    "stops": 1,
    "triggered": 1
   },
   "timing": {
    "bars_to_target": null,
    "bars_to_stop": [
     5,
     5,
     5
    ],
    "bars_in_trade": [
     5,
     5,
     5
    ],
    "mfe_r": [
     0.65591389,
     0.65591389,
     0.65591389
    ],
    "stopped_after_1r": 0,
    "bars_to_entry": [
     2,
     2,
     2
    ],
    "range_pct": [
     0.04565833,
     0.05008707,
     0.0570019
    ],
    "range_atr": [
     2.12900934,
     2.30711329,
     2.48488396
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 7042,
   "verdict": "insufficient_data",
   "verdictTrade": "insufficient_data"
  },
  {
   "market": "commodities",
   "tf": "1w",
   "side": "all",
   "n": 1,
   "symbols": 1,
   "first": "2020-01-06",
   "last": "2020-01-06",
   "win10": null,
   "baseWin10": null,
   "excess10": {
    "mean": null,
    "low": null,
    "high": null,
    "q": null,
    "stable": false
   },
   "trade": {
    "n": 0,
    "winRate": null,
    "expectancyR": null,
    "baseWinRate": null,
    "baseExpectancyR": null,
    "timeoutRate": null,
    "triggeredRate": 0,
    "invalidatedRate": 1,
    "hits": null,
    "stops": null,
    "triggered": 0
   },
   "timing": {
    "bars_to_entry": null,
    "range_pct": [
     0.11839434,
     0.11839434,
     0.11839434
    ],
    "range_atr": [
     2.1292429,
     2.1292429,
     2.1292429
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 15617,
   "verdict": "insufficient_data",
   "verdictTrade": "insufficient_data"
  },
  {
   "market": "all",
   "tf": "1w",
   "side": "all",
   "n": 121,
   "symbols": 115,
   "first": "1986-01-06",
   "last": "2026-06-15",
   "win10": 0.475,
   "baseWin10": 0.58016376,
   "excess10": {
    "mean": -0.00206973,
    "low": -0.02918427,
    "high": 0.02499494,
    "q": 0.96463522,
    "stable": true
   },
   "trade": {
    "n": 18,
    "winRate": 0.27777778,
    "expectancyR": -0.16887435,
    "baseWinRate": 0.1875,
    "baseExpectancyR": -0.4375,
    "timeoutRate": 0,
    "triggeredRate": 0.14876033,
    "invalidatedRate": 0.84297521,
    "hits": 5,
    "stops": 13,
    "triggered": 18
   },
   "timing": {
    "bars_to_target": [
     7,
     9,
     21
    ],
    "bars_to_stop": [
     5,
     7,
     11
    ],
    "bars_in_trade": [
     5,
     8,
     11
    ],
    "mfe_r": [
     0.40731648,
     0.66838926,
     1.84177867
    ],
    "stopped_after_1r": 0.15384615,
    "bars_to_entry": [
     2,
     3,
     3.75
    ],
    "range_pct": [
     0.08096134,
     0.1111334,
     0.17129412
    ],
    "range_atr": [
     1.83952618,
     2.25331235,
     2.66342759
    ]
   },
   "breakoutStats": {
    "falseStartRate": null,
    "baseFalseStartRate": null,
    "throwbackRate": null,
    "targetHitRate": null
   },
   "confirmRate": null,
   "oneEveryBars": 12173,
   "verdict": "no_edge",
   "verdictTrade": "insufficient_data"
  }
 ],
 "attribution": "PatternsWizard (https://patternswizard.com/), pattern statistics",
 "license": {
  "name": "© PatternsWizard, all rights reserved",
  "url": "https://patternswizard.com/open-data/#license"
 },
 "disclaimer": "Historical statistics before fees and slippage. Not investment advice: past results do not predict future ones."
}