---
url: /indicators/candlestick-patterns.md
description: Chart patterns derived from candle shapes and price formations.
package: FacioQuo.Stock.Indicators
docs_version: v3
canonical: https://dotnet.stockindicators.dev/indicators/candlestick-patterns
generated: 2026-10-15T06:15:05.027Z
commit: 4044e66ee11c1611f024b18d0096806706a00c9d
---

## About candlestick patterns

Candlestick patterns uniquely share a common `IReadOnlyList<CandleResult>` response type.

### `CandleResult`

| property | description |
| ----- | ----------- |
| `Timestamp`*`DateTime`* | Date from evaluated `TBar` |
| `Price`*`decimal?`* | Price of the most relevant OHLC candle element when a signal is present |
| `Match`*`Match`* | Indicates a [matching signal type](#match) for this candlestick pattern |
| `Candle`*`CandleProperties`* | Characteristics of the candle body and wicks |

#### `Match`

When a candlestick pattern is recognized, it produces a matching ***signal***.  In some cases, an intrinsic *confirmation* is also available after the ***signal***.  In cases where previous bars were used to identify a pattern, they are indicated as the ***basis*** for the ***signal***.  This `enum` can also be referenced as an `int` value.  Documentation for each [candlestick pattern](/indicators/candlestick-patterns.md) will indicate whether confirmation and/or ***basis*** information is produced.

| enum / value | description |
| ----- | ----------- |
| `Match.BullConfirmed`200 | Confirmation of a prior bull signal |
| `Match.BullSignal`100 | Bullish signal |
| `Match.BullBasis`10 | Bars supporting a bullish signal |
| `Match.Neutral`1 | Signal for non-directional patterns |
| `Match.None`0 | No match |
| `Match.BearBasis`-10 | Bars supporting a bearish signal |
| `Match.BearSignal`-100 | Bearish signal |
| `Match.BearConfirmed`-200 | Confirmation of a prior bear signal |

#### `CandleProperties`

The `CandleProperties` record class extends the basic `Bar` type with calculated properties.

| property | description |
| ----- | ----------- |
| `Timestamp`*`DateTime`* | Close date |
| `Open`*`decimal`* | Open price |
| `High`*`decimal`* | High price |
| `Low`*`decimal`* | Low price |
| `Close`*`decimal`* | Close price |
| `Volume`*`decimal`* | Volume |
| `Size`*`decimal?`* | `High-Low` |
| `Body`*`decimal?`* | `\|Open-Close\|` |
| `UpperWick`*`decimal?`* | Upper wick size |
| `LowerWick`*`decimal?`* | Lower wick size |
| `BodyPct`*`double?`* | `Body/Size` |
| `UpperWickPct`*`double?`* | `UpperWick/Size` |
| `LowerWickPct`*`double?`* | `LowerWick/Size` |
| `IsBullish`*`bool`* | `Close>Open` direction |
| `IsBearish`*`bool`* | `Close<Open` direction |
