present
注册即可在首次购物时获得 $50 优惠
Trading product for Doji Engulf 指标, image 1
Doji Engulf
指标
3 下载
版本 1.0, Jul 2025
Windows 版、Mac 版
3
免费安装

说明

using cAlgo.API;

using cAlgo.API.Indicators;

using cAlgo.API.Internals;

using System;


namespace cAlgo.Indicators

{

[Indicator(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]

public class DojiStrategyIndicator : Indicator

{

[Parameter("Doji size", DefaultValue = 0.05, MinValue = 0.01, Step = 0.01)]

public double DojiSize { get; set; }


[Parameter("Long Candle Ratio", DefaultValue = 0.7, MaxValue = 1, Step = 0.1)]

public double LongCandleRatio { get; set; }


[Parameter("Use Volume Filter?", DefaultValue = false)]

public bool UseVolumeFilter { get; set; }


[Parameter("Volume Moving Average Period", DefaultValue = 24)]

public int VolumeMA { get; set; }


[Parameter("RSI Period", DefaultValue = 14)]

public int RSIPeriod { get; set; }


[Parameter("Wick-to-Body Ratio", DefaultValue = 2.5, MinValue = 1.0, Step = 0.1)]

public double WickToBodyRatio { get; set; }


private MovingAverage volumeMA;

private RelativeStrengthIndex rsi;


[Output("Doji Signal", Color = Colors.Orange, PlotType = PlotType.Points, Thickness = 2)]

public IndicatorDataSeries DojiSignal { get; set; }


protected override void Initialize()

{

if (UseVolumeFilter)

volumeMA = Indicators.MovingAverage(MarketSeries.TickVolume, VolumeMA, MovingAverageType.Simple);


rsi = Indicators.RelativeStrengthIndex(MarketSeries.Close, RSIPeriod);

}


public override void Calculate(int index)

{

double body = MarketSeries.Close[index] - MarketSeries.Open[index];

double range = MarketSeries.High[index] - MarketSeries.Low[index];

double abody = Math.Abs(body);

double ratio = abody / range;


bool isDoji = abody <= range * DojiSize;

bool goStar = isDoji && (!UseVolumeFilter || MarketSeries.TickVolume[index] > volumeMA.Result[index]);


if (goStar && IsHigherTimeFrame(out int timeFrameNumber, out string label))

{

DojiSignal[index] = MarketSeries.Close[index]; // 在图表上标记十字星

Chart.DrawIcon("Doji" + TimeFrame.ToString() + index, ChartIconType.Diamond, index, MarketSeries.Close[index], Color.Orange);


// 用实线突出显示十字星蜡烛的高点和低点,延伸至接下来的3根蜡烛

HighlightDojiHighLow(index, timeFrameNumber, label);

}


// SMT背离检测现在应用于所有时间框架

DetectSMTDivergence(index);

}


private bool IsHigherTimeFrame(out int timeFrameNumber, out string label)

{

timeFrameNumber = 0;

label = string.Empty;


if (TimeFrame == TimeFrame.Minute15)

{

timeFrameNumber = 15;

label = "0.25";

return true;

}

else if (TimeFrame == TimeFrame.Minute30)

{

timeFrameNumber = 30;

label = "0.5";

return true;

}

else if (TimeFrame == TimeFrame.Minute45)

{

timeFrameNumber = 45;

label = "0.75";

return true;

}

else if (TimeFrame == TimeFrame.Hour)

{

timeFrameNumber = 1;

label = "1";

return true;

}

else if (TimeFrame == TimeFrame.Hour2)

{

timeFrameNumber = 2;

label = "48";

return true;

}

else if (TimeFrame == TimeFrame.Hour4)

{

timeFrameNumber = 4;

label = "4";

return true;

}

else if (TimeFrame == TimeFrame.Daily)

{

timeFrameNumber = 24;

label = "24";

return true;

}

else if (TimeFrame == TimeFrame.Weekly)

{

timeFrameNumber = 168;

label = "W";

return true;

}

else if (TimeFrame == TimeFrame.Monthly)

{

timeFrameNumber = 720;

label = "M";

return true;

}


return false;

}


private void HighlightDojiHighLow(int dojiIndex, int timeFrameNumber, string label)

{

double dojiHigh = MarketSeries.High[dojiIndex];

double dojiLow = MarketSeries.Low[dojiIndex];


// 在十字星蜡烛的高点和低点绘制实线水平线,延伸至接下来的3根蜡烛

Chart.DrawTrendLine("DojiHighLine" + TimeFrame.ToString() + dojiIndex, dojiIndex, dojiHigh, dojiIndex + 3, dojiHigh, Color.Blue, 2, LineStyle.Solid).IsInteractive = true;

Chart.DrawTrendLine("DojiLowLine" + TimeFrame.ToString() + dojiIndex, dojiIndex, dojiLow, dojiIndex + 3, dojiLow, Color.Red, 2, LineStyle.Solid).IsInteractive = true;


// 在蓝线旁边添加时间框架编号或标签文本

Chart.DrawText("TimeFrameHigh" + TimeFrame.ToString() + dojiIndex, label, dojiIndex + 3, dojiHigh, Color.Green).IsInteractive = true;

}


private void DetectSMTDivergence(int index)

{

// 检查当前高点或低点是否与RSI形成背离

double currentHigh = MarketSeries.High[index];

double currentLow = MarketSeries.Low[index];


double prevHigh = MarketSeries.High[index - 1];

double prevLow = MarketSeries.Low[index - 1];


double currentRSI = rsi.Result[index];

double prevRSI = rsi.Result[index - 1];


bool isWickDivergence = IsWickDivergence(index, currentHigh, currentLow, prevHigh, prevLow);


if (isWickDivergence)

{

// 看跌背离:价格创出更高高点,RSI创出更低高点

if (currentHigh > prevHigh && currentRSI < prevRSI)

{

// 在图表上用该时间框架的唯一标识符标记背离

Chart.DrawIcon("BearishDivergence" + TimeFrame.ToString() + index, ChartIconType.DownArrow, index, currentHigh, Color.Red);

}


// 看涨背离:价格创出更低低点,RSI创出更高低点

if (currentLow < prevLow && currentRSI > prevRSI)

{

// 在图表上用该时间框架的唯一标识符标记背离

Chart.DrawIcon("BullishDivergence" + TimeFrame.ToString() + index, ChartIconType.UpArrow, index, currentLow, Color.Green);

}

}

}


private bool IsWickDivergence(int index, double currentHigh, double currentLow, double prevHigh, double prevLow)

{

double currentBody = Math.Abs(MarketSeries.Close[index] - MarketSeries.Open[index]);

double currentRange = currentHigh - currentLow;


double prevBody = Math.Abs(MarketSeries.Close[index - 1] - MarketSeries.Open[index - 1]);

double prevRange = prevHigh - prevLow;


// 判断当前蜡烛是否具有小实体和长影线

bool currentHasLongWicks = (currentHigh - MarketSeries.Close[index]) > currentBody * WickToBodyRatio &&

(MarketSeries.Open[index] - currentLow) > currentBody * WickToBodyRatio;


// 判断前一个蜡烛是否具有小实体和长影线

bool prevHasLongWicks = (prevHigh - MarketSeries.Close[index - 1]) > prevBody * WickToBodyRatio &&

(MarketSeries.Open[index - 1] - prevLow) > prevBody * WickToBodyRatio;


return currentHasLongWicks || prevHasLongWicks;

}

}

}

摘要

指标配置

客户评价

0.0
评价:0
客户评价
该产品尚无评价。已经试过了?抢先告诉其他人!

讨论

常见问答

cTrader Store 提供的所有产品,包括交易机器人、指标和插件,均由第三方开发者提供,仅供信息参考和技术访问之用。cTrader Store 并非经纪商,不提供投资建议、个人推荐或任何未来业绩保证。

该作者的其他作品

指标
The Session Golden Hours indicator is designed for serious traders looking to visualize high-probability

猜您喜欢

指标
SMC
Breakout
+1
Delta Peak Bubbles is a tick‑chart overlay for cTrader that highlights the strongest momentum spikes.
"KANDIKA HEAT MAP" 标识
评分最高
4.6
(5)
$19
指标
Color-Based Market Pressure & Volatility Visualizer The Kandika Heatmap Indicator
指标
Indices
Multi-Timeframe ADX Trend Dots & Arrows
指标
Pin Bar
Inducement
+5
Institutional Nasdaq Session Liquidity Map with Live Point HUD, Sweep Alerts & Interactive Playbook.
指标
Volume
Order Block
+4
Advanced Pro Volume Profile: Double Back-to-Back, Institutional Dynamic, Fixed Range & Order Flow
指标
VWAP
Volume
+5
Institutional Nasdaq Session VWAP & 3-Sigma Deviation Framework. Live NY Session Tracking, Real-Time Point Metrics, Wick
指标
Forex
BTCUSD
+6
Multi-pole Gaussian filter channel with dynamic color, Reduced Lag & Fast Response modes. Port of DonovanWall's original
指标
RSI
Signal
+2
Dynamic circles visualize price's volatility position. Like RSI for market overextension & stretch. Quantify context.
指标
Forex
Crypto
Bar Close Alert Manager provides real-time alerts for bar closures with customizable notifications and automation.
指标
AI
EURUSD
Future-AI indicator.
指标
SMC
Forex
+5
Pinpoint FVGs, track fills and see mitigation stats — trade imbalances with clarity and confidence.
指标
ATR
EMA
+5
The indicator displays potential reversal zones (support/resistance) on the chart based on the average range (High–Low)
指标
AI
RSI
+7
EMA MTF TREND PRO - Multi-timeframe trend analysis overlay indicator, 6 timeframes - in one table with ADX
指标
Key Levels
Liquidity Sweep
Professional Opening Range Breakout, Initial Balance, False breakout Detection
指标
Forex
BTCUSD
+9
On-chart economic calendar with custom filters and automated Telegram alerts. Never miss high-impact news!
指标
Triangle
Double Top
+5
Know which liquidity sweeps are real. Auto-tracks EQH/EQL and confirms genuine reversals, not just broken levels.
指标
AI
BOS
+4
Golden Boom and Crash Spike Detector is a trading tool designed for Crash 300 and Boom 300 indices on M1 Timeframe.
指标
AI
ATR
+27
Want a cBot based on this indicator? Contact us!

价格

3
免费安装