mql5-indicator-patterns

安装量: 110
排名: #7708

安装

npx skills add https://github.com/terrylica/cc-skills --skill mql5-indicator-patterns

Battle-tested patterns for creating custom MQL5 indicators with proper display, buffer management, and real-time updates.

Quick Reference

Essential Patterns

Display Scale (for small values < 1.0):

IndicatorSetDouble(INDICATOR_MINIMUM, 0.0);
IndicatorSetDouble(INDICATOR_MAXIMUM, 0.1);

Buffer Setup (visible + hidden):

SetIndexBuffer(0, BufVisible, INDICATOR_DATA);        // Visible
SetIndexBuffer(1, BufHidden, INDICATOR_CALCULATIONS); // Hidden

New Bar Detection (prevents drift):

static int last_processed_bar = -1;
bool is_new_bar = (i > last_processed_bar);

Warmup Calculation:

int StartCalcPosition = underlying_warmup + own_warmup;
PlotIndexSetInteger(0, PLOT_DRAW_BEGIN, StartCalcPosition);

Common Pitfalls

Blank Display: Set explicit scale (see Display Scale reference)

Rolling Window Drift: Use new bar detection with hidden buffer (see Recalculation reference)

Misaligned Plots: Calculate correct PLOT_DRAW_BEGIN (see Complete Template reference)

Forward-Indexed Arrays: Always set ArraySetAsSeries(buffer, false)

Key Patterns

For production MQL5 indicators:

  • Explicit scale for small values (< 1.0 range)

  • Hidden buffers for recalculation tracking

  • New bar detection prevents rolling window drift

  • Static variables maintain state efficiently

  • Proper warmup calculation prevents misalignment

  • Forward indexing for code clarity

These patterns solve the most common indicator development issues encountered in real-world MT5 development.

Reference Documentation

For detailed information, see:

返回排行榜