From de5263de324eb80a8353ff8943865fe60af1f4bb Mon Sep 17 00:00:00 2001 From: zhutoutoutousan Date: Wed, 15 Apr 2026 23:38:45 +0200 Subject: [PATCH] Update --- docs/ups-pickup-system-tikz.tex | 204 ++++++ .../MQL5}/RSIReversalAsianAUDUSD/main.mq5 | 0 .../RSIReversalAsianAUDUSD/test-balance.png | Bin .../MQL5}/RSIReversalAsianEURUSD/main.mq5 | 0 .../RSIReversalAsianEURUSD/test-balance.jpg | Bin frontline/MQL5/RSIScalpingXAUUSD/main.mq5 | 26 +- .../DeepMarkovRegimeModel.mqh | 346 ++++++++++ .../MagicNumberHelpers.mqh | 157 +++++ .../RSIScalpingXAUUSD_DeepMarkov/main.mq5 | 350 ++++++++++ .../MQL5/RSIScalpingXAUUSD_PlusHours/main.mq5 | 307 +++++++++ .../MQL5/RSIScalpingXAUUSD_Trailing/main.mq5 | 367 ++++++++++ .../MQL5/RSI_secret_sauce_XAUUSD/main.mq5 | 2 +- frontline/MQL5/SuperEMAXAUUSD/SuperEMA.set | 36 + frontline/MQL5/SuperEMAXAUUSD/main.mq5 | 448 ++++++++++++ .../_united_dynamic/AdaptiveMonthlyRegime.mqh | 639 ++++++++++++++++++ .../Strategies/RSISecretSauceStrategy.mqh | 438 ++++++++++++ .../Strategies/SuperEMAStrategy.mqh | 478 +++++++++++++ .../_united_dynamic/UnitedProfitPanel.mqh | 437 ++++++++++++ frontline/MQL5/_united_dynamic/main.mq5 | 345 ++++++++-- .../report/ReportHistory-51389369.xlsx | Bin 0 -> 264920 bytes .../report/fig-pnl-by-magic.tex | 6 + .../report/fig-pnl-timeseries-by-robot.tex | 6 + .../report/fig-pnl-timeseries.tex | 6 + .../report/pnl_by_magic_robot.csv | 9 + .../report/pnl_by_magic_robot.pdf | Bin 0 -> 21450 bytes .../report/pnl_by_magic_robot.png | Bin 0 -> 140663 bytes .../report/pnl_timeseries_by_robot.csv | 386 +++++++++++ .../report/pnl_timeseries_by_robot.pdf | Bin 0 -> 25451 bytes .../report/pnl_timeseries_by_robot.png | Bin 0 -> 273391 bytes .../report/pnl_timeseries_line.csv | 102 +++ .../report/pnl_timeseries_line.pdf | Bin 0 -> 23147 bytes .../report/pnl_timeseries_line.png | Bin 0 -> 142585 bytes lab/EAs/EMARSIWarm.mq5 | 256 +++++++ lab/EAs/SimpleEMA/exploration-ideas.tex | 21 + lab/EAs/SimpleEMA/main.mq5 | 179 +++++ lab/EAs/SimpleEMA/main_v1.mq5 | 297 ++++++++ lab/EAs/SimpleFibonacci/main.mq5 | 378 +++++++++++ lab/EAs/SimpleTrendline.mq5 | 0 lab/EAs/rsi-scalping.mq5 | 381 +++++++++++ lab/EAs/rsisauce-optimize.set | 25 + 40 files changed, 6578 insertions(+), 54 deletions(-) create mode 100644 docs/ups-pickup-system-tikz.tex rename {back-pedal/archive => frontline/MQL5}/RSIReversalAsianAUDUSD/main.mq5 (100%) rename {back-pedal/archive => frontline/MQL5}/RSIReversalAsianAUDUSD/test-balance.png (100%) rename {back-pedal/archive => frontline/MQL5}/RSIReversalAsianEURUSD/main.mq5 (100%) rename {back-pedal/archive => frontline/MQL5}/RSIReversalAsianEURUSD/test-balance.jpg (100%) create mode 100644 frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/DeepMarkovRegimeModel.mqh create mode 100644 frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/MagicNumberHelpers.mqh create mode 100644 frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/main.mq5 create mode 100644 frontline/MQL5/RSIScalpingXAUUSD_PlusHours/main.mq5 create mode 100644 frontline/MQL5/RSIScalpingXAUUSD_Trailing/main.mq5 create mode 100644 frontline/MQL5/SuperEMAXAUUSD/SuperEMA.set create mode 100644 frontline/MQL5/SuperEMAXAUUSD/main.mq5 create mode 100644 frontline/MQL5/_united_dynamic/AdaptiveMonthlyRegime.mqh create mode 100644 frontline/MQL5/_united_dynamic/Strategies/RSISecretSauceStrategy.mqh create mode 100644 frontline/MQL5/_united_dynamic/Strategies/SuperEMAStrategy.mqh create mode 100644 frontline/MQL5/_united_dynamic/UnitedProfitPanel.mqh create mode 100644 frontline/MQL5/_united_dynamic/report/ReportHistory-51389369.xlsx create mode 100644 frontline/MQL5/_united_dynamic/report/fig-pnl-by-magic.tex create mode 100644 frontline/MQL5/_united_dynamic/report/fig-pnl-timeseries-by-robot.tex create mode 100644 frontline/MQL5/_united_dynamic/report/fig-pnl-timeseries.tex create mode 100644 frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.csv create mode 100644 frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.pdf create mode 100644 frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.png create mode 100644 frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.csv create mode 100644 frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.pdf create mode 100644 frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.png create mode 100644 frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.csv create mode 100644 frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.pdf create mode 100644 frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.png create mode 100644 lab/EAs/EMARSIWarm.mq5 create mode 100644 lab/EAs/SimpleEMA/exploration-ideas.tex create mode 100644 lab/EAs/SimpleEMA/main.mq5 create mode 100644 lab/EAs/SimpleEMA/main_v1.mq5 create mode 100644 lab/EAs/SimpleFibonacci/main.mq5 create mode 100644 lab/EAs/SimpleTrendline.mq5 create mode 100644 lab/EAs/rsi-scalping.mq5 create mode 100644 lab/EAs/rsisauce-optimize.set diff --git a/docs/ups-pickup-system-tikz.tex b/docs/ups-pickup-system-tikz.tex new file mode 100644 index 0000000..a9adc8f --- /dev/null +++ b/docs/ups-pickup-system-tikz.tex @@ -0,0 +1,204 @@ +% !TEX program = xelatex +% UPS 自提 / 取件码 — 流程与系统设计示意(TikZ) +% Overleaf: 使用 fontset=fandol(TeX Live 自带,无需 SimSun) +% 本地 Windows 可改为: \usepackage[UTF8,scheme=plain]{ctex}\setCJKmainfont{SimSun} +\documentclass[11pt,a4paper]{article} +\usepackage[UTF8,scheme=plain,fontset=fandol]{ctex} +\usepackage{geometry} +\geometry{margin=2.2cm} +\usepackage{tikz} +\usetikzlibrary{ + arrows.meta, + positioning, + shapes.geometric, + shapes.symbols, + fit, + backgrounds, + calc, + shadows.blur +} +\definecolor{UPSbrown}{HTML}{351C15} +\definecolor{UPSgold}{HTML}{FFB500} +\definecolor{UPSlight}{HTML}{F5F0E8} +\usepackage{hyperref} +\hypersetup{colorlinks=true,linkcolor=UPSbrown,urlcolor=UPSgold} + +\tikzset{ + font=\small, + actor/.style={ + draw=UPSbrown, + line width=0.8pt, + rounded corners=3pt, + minimum width=2.6cm, + minimum height=1cm, + align=center, + fill=white, + drop shadow={shadow xshift=1pt,shadow yshift=-1pt} + }, + sys/.style={ + draw=UPSbrown, + line width=0.6pt, + rounded corners=2pt, + minimum width=3cm, + minimum height=0.85cm, + align=center, + fill=UPSlight + }, + % 勿用名「step」:与 TikZ 内置 key /tikz/step 冲突(Overleaf 会报 pgfkeys Error) + flowstep/.style={ + draw=UPSbrown, + rounded corners=2pt, + fill=white, + minimum width=3cm, + minimum height=0.7cm, + align=center, + font=\footnotesize + }, + flow/.style={-{Stealth[length=2.2mm]}, thick, UPSbrown}, + lab/.style={font=\footnotesize, align=center}, + secret/.style={fill=UPSgold!25, draw=UPSgold!80!black, dashed} +} + +\title{\textcolor{UPSbrown}{UPS 风格自提点:取件码与系统设计}\\[0.3em] +\large TikZ 图示(教学/示意,非官方)} +\author{} +\date{} + +\begin{document} +\maketitle + +\begin{abstract} +\noindent +本文档用 TikZ 示意「快递员投件 — 平台发码 — 收件人取件」的信息边界: +投件方通常不掌握收件人取件码;取件码仅通过安全通道下发给收件人。 +\end{abstract} + +% -------------------------------------------------------------------------- +\section{角色与信息可见性} + +\begin{figure}[htbp] +\centering +\begin{tikzpicture}[node distance=1.4cm and 2cm] + \node[actor] (c) {快递员\\(存件/投件)}; + \node[actor, right=3.2cm of c] (s) {发件人\\(电商/个人)}; + \coordinate (midcs) at ($ (c)!0.5!(s) $); + \node[actor, below=1.8cm of midcs] (r) {收件人}; + + \node[sys, right=3cm of r, minimum width=3.4cm] (plat) {物流平台\\\footnotesize 订单 / 轨迹 / 发码}; + \node[sys, below=of plat, minimum width=3.4cm] (lock) {自提柜控制器\\\footnotesize 格口 / 电子锁}; + + \draw[flow] (c) -- node[lab, left] {投件扫码\\工号/任务单} (plat); + \draw[flow] (s) -- node[lab, above, sloped] {运单信息\\(无取件码)} (plat); + \draw[flow, UPSgold!70!black] (plat) -- node[lab, right] {短信/App\\\textbf{取件码}} (r); + \draw[flow] (plat) -- node[lab, right] {开格指令} (lock); + \draw[flow] (c) -- node[lab, below, sloped] {物理投件} (lock); + + \node[secret, rounded corners, fit=(r) (plat), inner sep=8pt, label={[font=\footnotesize]above:\textbf{取件码仅在收件人通道}}] {}; +\end{tikzpicture} +\caption{示意:发件人与快递员一般不接收「收件取件码」;收件人通过平台下发获得取件码。} +\label{fig:visibility} +\end{figure} + +% -------------------------------------------------------------------------- +\section{业务流程(泳道图)} + +\begin{figure}[htbp] +\centering +\begin{tikzpicture}[ + x=1cm, y=1cm, + lane/.style={draw=UPSbrown!40, fill=UPSlight, minimum height=5.2cm, minimum width=3.6cm, anchor=north west} +] + + % lanes + \node[lane] (L1) at (0,0) {}; + \node[anchor=north west, font=\bfseries\footnotesize, text=UPSbrown] at (0.15,-0.15) {快递员}; + \node[lane] (L2) at (4,0) {}; + \node[anchor=north west, font=\bfseries\footnotesize, text=UPSbrown] at (4.15,-0.15) {平台}; + \node[lane] (L3) at (8,0) {}; + \node[anchor=north west, font=\bfseries\footnotesize, text=UPSbrown] at (8.15,-0.15) {收件人}; + + % courier steps + \node[flowstep] at (1.8,-1.1) (a1) {到站扫描}; + \node[flowstep, below=0.55 of a1] (a2) {分配格口}; + \node[flowstep, below=0.55 of a2] (a3) {投件关门}; + + % platform steps + \node[flowstep] at (5.8,-1.1) (b1) {校验运单}; + \node[flowstep, below=0.55 of b1] (b2) {生成取件码}; + \node[flowstep, below=0.55 of b2] (b3) {短信/App 推送}; + \node[flowstep, below=0.55 of b3] (b4) {更新状态\\「待取件」}; + + % recipient + \node[flowstep] at (9.8,-1.1) (c1) {收到通知}; + \node[flowstep, below=0.55 of c1] (c2) {到柜输入码}; + \node[flowstep, below=0.55 of c2] (c3) {取件完成}; + + \draw[flow] (a1) -- (b1); + \draw[flow] (b2) -- (c1); + \path (a3.south) ++(0,-0.2) coordinate (tmpa); + \draw[flow] (tmpa) -- (tmpa -| b1.west) |- (b1); + \path (c2.west) ++(-0.6,0) coordinate (tmpr); + \draw[flow] (c2.west) -- (tmpr) |- (b4.east); + +\end{tikzpicture} +\caption{泳道示意:平台在投件确认后生成取件码并下发收件人;快递员侧流程与取件码解耦。} +\label{fig:swimlane} +\end{figure} + +% -------------------------------------------------------------------------- +\section{系统分层架构} + +\begin{figure}[htbp] +\centering +\begin{tikzpicture}[node distance=0.75cm] + \node[sys, minimum width=10cm, text width=9.6cm] (cli) {客户端层:快递员 App / 收件人 App / 柜机触摸屏}; + \node[sys, minimum width=10cm, text width=9.6cm, below=of cli] (gw) {网关层:API 网关、鉴权、限流、审计日志}; + \node[sys, minimum width=4.5cm, below left=1 and -0.2 of gw] (ord) {订单与运单服务}; + \node[sys, minimum width=4.5cm, below right=1 and -0.2 of gw] (code) {取件码服务\\\footnotesize 生成·绑定·失效}; + \node[sys, minimum width=4.5cm, below=of ord] (dev) {设备接入服务\\\footnotesize 开柜指令·状态回传}; + \node[sys, minimum width=4.5cm, below=of code] (msg) {消息服务\\\footnotesize 短信·推送·邮件}; + \node[sys, minimum width=10cm, text width=9.6cm, below=1.2 of dev.south west, anchor=west, xshift=0] (data) {数据层:运单库、取件码表(哈希)、设备影子、不可变审计}; + + \draw[flow] (cli) -- (gw); + \draw[flow] (gw.south west) ++(1.2,0) -- ++(0,-0.35) -| (ord); + \draw[flow] (gw.south east) ++(-1.2,0) -- ++(0,-0.35) -| (code); + \draw[flow] (ord) -- (dev); + \draw[flow] (code) -- (msg); + \draw[flow] (dev) -- (data.north -| dev); + \draw[flow] (msg) -- (data.north -| msg); +\end{tikzpicture} +\caption{逻辑分层:取件码由独立服务生成与校验,与投件流水解耦,便于最小权限与审计。} +\label{fig:architecture} +\end{figure} + +% -------------------------------------------------------------------------- +\section{取件码生命周期(状态机)} + +\begin{figure}[htbp] +\centering +\begin{tikzpicture}[ + stnode/.style={circle, draw=UPSbrown, minimum size=1.15cm, align=center, font=\footnotesize, fill=white}, + acc/.style={-{Stealth}, thick, UPSbrown} +] + \node[stnode] (A) {未生成}; + \node[stnode, right=2.8cm of A] (B) {已生成\\未通知}; + \node[stnode, right=2.8cm of B] (C) {已下发}; + \coordinate (midBC) at ($ (B)!0.5!(C) $); + \node[stnode, below=2cm of midBC] (D) {已核销}; + \node[stnode, left=2.8cm of D, fill=UPSlight] (E) {过期/作废}; + + \draw[acc] (A) -- node[above, font=\scriptsize] {投件确认} (B); + \draw[acc] (B) -- node[above, font=\scriptsize] {推送} (C); + \draw[acc] (C) -- node[right, font=\scriptsize] {正确输入} (D); + \draw[acc] (C) -- node[below left, font=\scriptsize] {超时策略} (E); + \draw[acc] (B) -- node[left, font=\scriptsize] {撤件} (E); +\end{tikzpicture} +\caption{取件码状态机示意:实际生产需加入重试、风控冻结、客服人工核销等分支。} +\label{fig:statemachine} +\end{figure} + +\vfill +\noindent\rule{\linewidth}{0.4pt}\\[0.3em] +{\footnotesize\textcolor{UPSbrown}{Disclaimer:} 图示为通用物流自提逻辑的教学草稿,与 UPS 任何地区正式产品文档无关。配色仅作风格参考。} + +\end{document} diff --git a/back-pedal/archive/RSIReversalAsianAUDUSD/main.mq5 b/frontline/MQL5/RSIReversalAsianAUDUSD/main.mq5 similarity index 100% rename from back-pedal/archive/RSIReversalAsianAUDUSD/main.mq5 rename to frontline/MQL5/RSIReversalAsianAUDUSD/main.mq5 diff --git a/back-pedal/archive/RSIReversalAsianAUDUSD/test-balance.png b/frontline/MQL5/RSIReversalAsianAUDUSD/test-balance.png similarity index 100% rename from back-pedal/archive/RSIReversalAsianAUDUSD/test-balance.png rename to frontline/MQL5/RSIReversalAsianAUDUSD/test-balance.png diff --git a/back-pedal/archive/RSIReversalAsianEURUSD/main.mq5 b/frontline/MQL5/RSIReversalAsianEURUSD/main.mq5 similarity index 100% rename from back-pedal/archive/RSIReversalAsianEURUSD/main.mq5 rename to frontline/MQL5/RSIReversalAsianEURUSD/main.mq5 diff --git a/back-pedal/archive/RSIReversalAsianEURUSD/test-balance.jpg b/frontline/MQL5/RSIReversalAsianEURUSD/test-balance.jpg similarity index 100% rename from back-pedal/archive/RSIReversalAsianEURUSD/test-balance.jpg rename to frontline/MQL5/RSIReversalAsianEURUSD/test-balance.jpg diff --git a/frontline/MQL5/RSIScalpingXAUUSD/main.mq5 b/frontline/MQL5/RSIScalpingXAUUSD/main.mq5 index 2bd461c..d416608 100644 --- a/frontline/MQL5/RSIScalpingXAUUSD/main.mq5 +++ b/frontline/MQL5/RSIScalpingXAUUSD/main.mq5 @@ -5,7 +5,7 @@ //+------------------------------------------------------------------+ #property copyright "Copyright 2025, MetaQuotes Ltd." #property link "https://www.mql5.com" -#property version "1.00" +#property version "1.01" #include #include "../_united/MagicNumberHelpers.mqh" @@ -92,6 +92,8 @@ void OnTick() { return; } + + ResyncPositionFromMarket(); // Check for existing position CheckExistingPosition(); @@ -120,6 +122,18 @@ bool UpdateRSI() return true; } +void ResyncPositionFromMarket() +{ + if(position_open) + return; + ulong t = GetPositionTicketByMagic(_Symbol, (ulong)MagicNumber); + if(t == 0 || !PositionSelectByTicket(t)) + return; + position_ticket = (int)t; + position_open = true; + current_position_type = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); +} + //+------------------------------------------------------------------+ //| Check existing position for exit conditions | //+------------------------------------------------------------------+ @@ -272,20 +286,22 @@ void OpenSellPosition() //+------------------------------------------------------------------+ void ClosePosition() { - // Close position using helper function that verifies symbol AND magic number - if(ClosePositionByMagic(trade, _Symbol, MagicNumber)) + if(ClosePositionByMagic(trade, _Symbol, (ulong)MagicNumber)) { position_open = false; position_ticket = 0; rsi_against_position = false; bars_against_count = 0; + return; } - else + if(!PositionExistsByMagic(_Symbol, (ulong)MagicNumber)) { - // Position doesn't exist or wrong magic number - reset tracking anyway position_open = false; position_ticket = 0; rsi_against_position = false; bars_against_count = 0; + return; } + Print("RSIScalpingXAUUSD: close failed (will retry on next bar). retcode=", + trade.ResultRetcode(), " lastError=", GetLastError()); } diff --git a/frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/DeepMarkovRegimeModel.mqh b/frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/DeepMarkovRegimeModel.mqh new file mode 100644 index 0000000..dbfa8be --- /dev/null +++ b/frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/DeepMarkovRegimeModel.mqh @@ -0,0 +1,346 @@ +//+------------------------------------------------------------------+ +//| DeepMarkovRegimeModel.mqh | +//| Hierarchical latent Markov stack + online regime-conditioned | +//| RSI parameter blending and self-tuning from trade feedback. | +//+------------------------------------------------------------------+ +#property copyright "Copyright 2026" +#property strict + +#define DMR_NUM_STATES 4 + +void DMR_NormalizePi(double &p[]) +{ + double s = 0.0; + for(int i = 0; i < DMR_NUM_STATES; i++) + s += p[i]; + if(s <= 0.0) + { + for(int j = 0; j < DMR_NUM_STATES; j++) + p[j] = 1.0 / DMR_NUM_STATES; + return; + } + for(int k = 0; k < DMR_NUM_STATES; k++) + p[k] /= s; +} + +//+------------------------------------------------------------------+ +//| Two-level "deep" Markov: macro volatility x micro RSI momentum | +//| Combined state s in {0..3} = macro*2 + micro. | +//| Belief filtered each bar; transitions learned online. | +//+------------------------------------------------------------------+ +class CDeepMarkovRegimeModel +{ +private: + int m_seed; + double m_learning_trans; // transition matrix EMA + double m_learning_emit; // emission center EMA + double m_learning_param; // per-state param nudge on wins + double m_penalty_param; // nudge on losses + + // Forward belief pi(s), row-stochastic T[s_prev][s_next] + double m_pi[DMR_NUM_STATES]; + double m_T[DMR_NUM_STATES][DMR_NUM_STATES]; + + // Gaussian emission centers in feature space (3D): RSI/100, dRSI norm, ATR ratio + double m_center[DMR_NUM_STATES][3]; + double m_emit_sigma; // shared diagonal sigma^2 for simplicity + + // Per-state RSI strategy parameters (learned offsets around base inputs) + double m_d_overbought[DMR_NUM_STATES]; + double m_d_oversold[DMR_NUM_STATES]; + double m_d_target_buy[DMR_NUM_STATES]; + double m_d_target_sell[DMR_NUM_STATES]; + double m_d_bars_scale[DMR_NUM_STATES]; // multiplicative around base BarsToWait + + double m_base_overbought; + double m_base_oversold; + double m_base_target_buy; + double m_base_target_sell; + int m_base_bars_wait; + + void NormalizePi() + { + DMR_NormalizePi(m_pi); + } + + void RowNormalizeT() + { + for(int i = 0; i < DMR_NUM_STATES; i++) + { + double row = 0.0; + for(int j = 0; j < DMR_NUM_STATES; j++) + row += m_T[i][j]; + if(row <= 0.0) + { + for(int j = 0; j < DMR_NUM_STATES; j++) + m_T[i][j] = 1.0 / DMR_NUM_STATES; + } + else + { + for(int j = 0; j < DMR_NUM_STATES; j++) + m_T[i][j] /= row; + } + } + } + + double FeatureDist2(const double f0, const double f1, const double f2, const int state) const + { + double d0 = f0 - m_center[state][0]; + double d1 = f1 - m_center[state][1]; + double d2 = f2 - m_center[state][2]; + return d0 * d0 + d1 * d1 + d2 * d2; + } + + static double Clamp(const double x, const double lo, const double hi) + { + if(x < lo) return lo; + if(x > hi) return hi; + return x; + } + +public: + CDeepMarkovRegimeModel() + { + m_seed = 0; + m_learning_trans = 0.05; + m_learning_emit = 0.02; + m_learning_param = 0.03; + m_penalty_param = 0.015; + m_emit_sigma = 0.35; + for(int i = 0; i < DMR_NUM_STATES; i++) + { + m_pi[i] = 1.0 / DMR_NUM_STATES; + for(int j = 0; j < DMR_NUM_STATES; j++) + m_T[i][j] = (i == j) ? 0.55 : 0.15; + m_d_overbought[i] = 0.0; + m_d_oversold[i] = 0.0; + m_d_target_buy[i] = 0.0; + m_d_target_sell[i] = 0.0; + m_d_bars_scale[i] = 1.0; + // Spread default emission prototypes across feature cube corners + m_center[i][0] = ((i & 1) != 0) ? 0.75 : 0.35; + m_center[i][1] = ((i & 2) != 0) ? 0.6 : 0.25; + m_center[i][2] = (double)(i % 3) * 0.25 + 0.2; + } + RowNormalizeT(); + } + + void SetLearningRates(const double lr_trans, const double lr_emit, const double lr_win, const double lr_loss) + { + m_learning_trans = lr_trans; + m_learning_emit = lr_emit; + m_learning_param = lr_win; + m_penalty_param = lr_loss; + } + + void SetBaseThresholds(const double ob, const double os, const double tb, const double ts, const int bars_wait) + { + m_base_overbought = ob; + m_base_oversold = os; + m_base_target_buy = tb; + m_base_target_sell = ts; + m_base_bars_wait = bars_wait; + } + + void SetSeed(const int seed) { m_seed = seed; } + + // f0: RSI/100, f1: tanh-like scaled delta RSI, f2: ATR short/long ratio capped + void Update(const double f0, const double f1, const double f2) + { + double emit[DMR_NUM_STATES]; + double max_ll = -1.0e100; + for(int s = 0; s < DMR_NUM_STATES; s++) + { + double d2 = FeatureDist2(f0, f1, f2, s); + emit[s] = MathExp(-0.5 * d2 / (m_emit_sigma * m_emit_sigma + 1.0e-12)); + if(emit[s] > max_ll) max_ll = emit[s]; + } + // numerical safety + for(int s2 = 0; s2 < DMR_NUM_STATES; s2++) + if(emit[s2] != emit[s2] || emit[s2] < 1.0e-12) + emit[s2] = 1.0e-12; + + double pi_new[DMR_NUM_STATES]; + for(int j = 0; j < DMR_NUM_STATES; j++) + { + double sum = 0.0; + for(int i = 0; i < DMR_NUM_STATES; i++) + sum += m_pi[i] * m_T[i][j]; + pi_new[j] = sum * emit[j]; + } + DMR_NormalizePi(pi_new); + + int imax_prev = ArgMaxPi(); + int imax_new = 0; + double best = pi_new[0]; + for(int j = 1; j < DMR_NUM_STATES; j++) + if(pi_new[j] > best) + { + best = pi_new[j]; + imax_new = j; + } + + // Online transition nudge toward observed edge imax_prev -> imax_new + for(int j = 0; j < DMR_NUM_STATES; j++) + m_T[imax_prev][j] *= (1.0 - m_learning_trans); + m_T[imax_prev][imax_new] += m_learning_trans; + RowNormalizeT(); + + // Pull emission center of dominant new state toward observation + for(int d = 0; d < 3; d++) + { + double obs[3] = {f0, f1, f2}; + m_center[imax_new][d] = (1.0 - m_learning_emit) * m_center[imax_new][d] + m_learning_emit * obs[d]; + } + + for(int k = 0; k < DMR_NUM_STATES; k++) + m_pi[k] = pi_new[k]; + NormalizePi(); + } + + int ArgMaxPi() const + { + int idx = 0; + double best = m_pi[0]; + for(int i = 1; i < DMR_NUM_STATES; i++) + if(m_pi[i] > best) + { + best = m_pi[i]; + idx = i; + } + return idx; + } + + double Belief(const int s) const + { + if(s < 0 || s >= DMR_NUM_STATES) return 0.0; + return m_pi[s]; + } + + // Blended effective thresholds (self-optimized offsets) + double EffectiveOverbought() const + { + double v = 0.0; + for(int s = 0; s < DMR_NUM_STATES; s++) + v += m_pi[s] * (m_base_overbought + m_d_overbought[s]); + return Clamp(v, 50.0, 95.0); + } + + double EffectiveOversold() const + { + double v = 0.0; + for(int s = 0; s < DMR_NUM_STATES; s++) + v += m_pi[s] * (m_base_oversold + m_d_oversold[s]); + return Clamp(v, 5.0, 50.0); + } + + double EffectiveTargetBuy() const + { + double v = 0.0; + for(int s = 0; s < DMR_NUM_STATES; s++) + v += m_pi[s] * (m_base_target_buy + m_d_target_buy[s]); + return Clamp(v, 55.0, 99.0); + } + + double EffectiveTargetSell() const + { + double v = 0.0; + for(int s = 0; s < DMR_NUM_STATES; s++) + v += m_pi[s] * (m_base_target_sell + m_d_target_sell[s]); + return Clamp(v, 1.0, 50.0); + } + + int EffectiveBarsToWait() const + { + double acc = 0.0; + for(int s = 0; s < DMR_NUM_STATES; s++) + acc += m_pi[s] * m_d_bars_scale[s]; + acc = Clamp(acc, 0.5, 2.0); + int b = (int)MathRound((double)m_base_bars_wait * acc); + return (int)Clamp((double)b, 1.0, 20.0); + } + + // Reinforce or soften parameters for the regime active at entry + void OnTradeClosed(const int dominant_state_at_entry, const double profit_money) + { + if(dominant_state_at_entry < 0 || dominant_state_at_entry >= DMR_NUM_STATES) + return; + const int s = dominant_state_at_entry; + const double mag = MathMin(1.0, MathAbs(profit_money) / 100.0 + 0.2); + if(profit_money > 0.0) + { + // Slightly widen capture: push targets outward in favorable direction + m_d_target_buy[s] += m_learning_param * mag * 0.5; + m_d_target_sell[s] -= m_learning_param * mag * 0.5; + m_d_overbought[s] += m_learning_param * mag * 0.25; + m_d_oversold[s] -= m_learning_param * mag * 0.25; + m_d_bars_scale[s] += m_learning_param * 0.05 * mag; + } + else if(profit_money < 0.0) + { + // Tighten: mean-revert offsets toward 0 and shorten patience + m_d_target_buy[s] *= (1.0 - m_penalty_param * mag); + m_d_target_sell[s] *= (1.0 - m_penalty_param * mag); + m_d_overbought[s] *= (1.0 - m_penalty_param * mag); + m_d_oversold[s] *= (1.0 - m_penalty_param * mag); + m_d_bars_scale[s] -= m_penalty_param * 0.05 * mag; + } + for(int i = 0; i < DMR_NUM_STATES; i++) + { + m_d_overbought[i] = Clamp(m_d_overbought[i], -15.0, 15.0); + m_d_oversold[i] = Clamp(m_d_oversold[i], -15.0, 15.0); + m_d_target_buy[i] = Clamp(m_d_target_buy[i], -20.0, 20.0); + m_d_target_sell[i] = Clamp(m_d_target_sell[i], -20.0, 20.0); + m_d_bars_scale[i] = Clamp(m_d_bars_scale[i], 0.5, 2.0); + } + } + + string DebugStateLine() const + { + string t = StringFormat("DMR pi=[%.2f,%.2f,%.2f,%.2f] OB=%.1f OS=%.1f TB=%.1f TS=%.1f BW=%d", + m_pi[0], m_pi[1], m_pi[2], m_pi[3], + EffectiveOverbought(), EffectiveOversold(), + EffectiveTargetBuy(), EffectiveTargetSell(), + EffectiveBarsToWait()); + return t; + } + + bool SaveToGlobals(const string prefix) const + { + string p = prefix + IntegerToString(m_seed) + "_"; + GlobalVariableSet(p + "pi0", m_pi[0]); + GlobalVariableSet(p + "pi1", m_pi[1]); + GlobalVariableSet(p + "pi2", m_pi[2]); + GlobalVariableSet(p + "pi3", m_pi[3]); + for(int i = 0; i < DMR_NUM_STATES; i++) + { + GlobalVariableSet(p + "dob" + IntegerToString(i), m_d_overbought[i]); + GlobalVariableSet(p + "dos" + IntegerToString(i), m_d_oversold[i]); + GlobalVariableSet(p + "dtb" + IntegerToString(i), m_d_target_buy[i]); + GlobalVariableSet(p + "dts" + IntegerToString(i), m_d_target_sell[i]); + GlobalVariableSet(p + "dbs" + IntegerToString(i), m_d_bars_scale[i]); + } + return true; + } + + bool LoadFromGlobals(const string prefix) + { + string p = prefix + IntegerToString(m_seed) + "_"; + if(!GlobalVariableCheck(p + "pi0")) + return false; + m_pi[0] = GlobalVariableGet(p + "pi0"); + m_pi[1] = GlobalVariableGet(p + "pi1"); + m_pi[2] = GlobalVariableGet(p + "pi2"); + m_pi[3] = GlobalVariableGet(p + "pi3"); + for(int i = 0; i < DMR_NUM_STATES; i++) + { + m_d_overbought[i] = GlobalVariableGet(p + "dob" + IntegerToString(i)); + m_d_oversold[i] = GlobalVariableGet(p + "dos" + IntegerToString(i)); + m_d_target_buy[i] = GlobalVariableGet(p + "dtb" + IntegerToString(i)); + m_d_target_sell[i] = GlobalVariableGet(p + "dts" + IntegerToString(i)); + m_d_bars_scale[i] = GlobalVariableGet(p + "dbs" + IntegerToString(i)); + } + NormalizePi(); + return true; + } +}; diff --git a/frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/MagicNumberHelpers.mqh b/frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/MagicNumberHelpers.mqh new file mode 100644 index 0000000..20b66bd --- /dev/null +++ b/frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/MagicNumberHelpers.mqh @@ -0,0 +1,157 @@ +//+------------------------------------------------------------------+ +//| MagicNumberHelpers.mqh | +//| Copyright 2025, MetaQuotes Ltd. | +//+------------------------------------------------------------------+ +#property copyright "Copyright 2025, MetaQuotes Ltd." +#property link "https://www.mql5.com" +#property version "1.00" + +#include + +//+------------------------------------------------------------------+ +//| Select position by symbol and magic number | +//+------------------------------------------------------------------+ +bool PositionSelectByMagic(string symbol, ulong magic_number) +{ + if(!PositionSelect(symbol)) + return false; + + if(PositionGetInteger(POSITION_MAGIC) != magic_number) + { + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + if(PositionGetTicket(i) > 0) + { + if(PositionGetString(POSITION_SYMBOL) == symbol && + PositionGetInteger(POSITION_MAGIC) == magic_number) + { + return true; + } + } + } + return false; + } + + return true; +} + +//+------------------------------------------------------------------+ +//| Select position by ticket and verify magic number and symbol | +//+------------------------------------------------------------------+ +bool PositionSelectByTicketAndMagic(ulong ticket, ulong magic_number) +{ + if(!PositionSelectByTicket(ticket)) + return false; + + return (PositionGetInteger(POSITION_MAGIC) == magic_number); +} + +//+------------------------------------------------------------------+ +//| Select position by ticket and verify symbol, magic number | +//+------------------------------------------------------------------+ +bool PositionSelectByTicketSymbolAndMagic(ulong ticket, string symbol, ulong magic_number) +{ + if(!PositionSelectByTicket(ticket)) + return false; + + return (PositionGetString(POSITION_SYMBOL) == symbol && + PositionGetInteger(POSITION_MAGIC) == magic_number); +} + +//+------------------------------------------------------------------+ +//| Check if position exists with correct magic number | +//+------------------------------------------------------------------+ +bool PositionExistsByMagic(string symbol, ulong magic_number) +{ + return PositionSelectByMagic(symbol, magic_number); +} + +//+------------------------------------------------------------------+ +//| Get position ticket by symbol and magic number | +//+------------------------------------------------------------------+ +ulong GetPositionTicketByMagic(string symbol, ulong magic_number) +{ + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + ulong ticket = PositionGetTicket(i); + if(ticket > 0) + { + if(PositionGetString(POSITION_SYMBOL) == symbol && + PositionGetInteger(POSITION_MAGIC) == magic_number) + { + return ticket; + } + } + } + return 0; +} + +//+------------------------------------------------------------------+ +//| Close position by symbol and magic number | +//+------------------------------------------------------------------+ +bool ClosePositionByMagic(CTrade &trade_obj, string symbol, ulong magic_number) +{ + ulong ticket = GetPositionTicketByMagic(symbol, magic_number); + if(ticket == 0) + return false; + + return trade_obj.PositionClose(ticket); +} + +//+------------------------------------------------------------------+ +//| Modify position by symbol and magic number | +//+------------------------------------------------------------------+ +bool ModifyPositionByMagic(CTrade &trade_obj, string symbol, ulong magic_number, + double sl, double tp) +{ + ulong ticket = GetPositionTicketByMagic(symbol, magic_number); + if(ticket == 0) + return false; + + return trade_obj.PositionModify(ticket, sl, tp); +} + +//+------------------------------------------------------------------+ +//| Get position profit by symbol and magic number | +//+------------------------------------------------------------------+ +double GetPositionProfitByMagic(string symbol, ulong magic_number) +{ + if(!PositionSelectByMagic(symbol, magic_number)) + return 0.0; + + return PositionGetDouble(POSITION_PROFIT); +} + +//+------------------------------------------------------------------+ +//| Get position type by symbol and magic number | +//+------------------------------------------------------------------+ +ENUM_POSITION_TYPE GetPositionTypeByMagic(string symbol, ulong magic_number) +{ + if(!PositionSelectByMagic(symbol, magic_number)) + return WRONG_VALUE; + + return (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); +} + +//+------------------------------------------------------------------+ +//| Count positions by symbol and magic number | +//+------------------------------------------------------------------+ +int CountPositionsByMagic(string symbol, ulong magic_number) +{ + int count = 0; + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + ulong ticket = PositionGetTicket(i); + if(ticket > 0) + { + if(PositionGetString(POSITION_SYMBOL) == symbol && + PositionGetInteger(POSITION_MAGIC) == magic_number) + { + count++; + } + } + } + return count; +} + +//+------------------------------------------------------------------+ diff --git a/frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/main.mq5 b/frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/main.mq5 new file mode 100644 index 0000000..0804865 --- /dev/null +++ b/frontline/MQL5/RSIScalpingXAUUSD_DeepMarkov/main.mq5 @@ -0,0 +1,350 @@ +//+------------------------------------------------------------------+ +//| RSIScalpingXAUUSD_DeepMarkov.mq5 | +//| RSI scalping with online deep Markov regime filter + self-tune. | +//+------------------------------------------------------------------+ +#property copyright "Copyright 2026" +#property link "https://www.mql5.com" +#property version "1.00" + +#include "MagicNumberHelpers.mqh" +#include "DeepMarkovRegimeModel.mqh" + +//--- Input parameters +input group "=== Chart / RSI ===" +input ENUM_TIMEFRAMES TimeFrame = PERIOD_H1; +input int RSI_Period = 14; +input ENUM_APPLIED_PRICE RSI_Applied_Price = PRICE_CLOSE; + +input group "=== Base RSI levels (Markov blends & learns offsets) ===" +input double RSI_Overbought = 71; +input double RSI_Oversold = 57; +input double RSI_Target_Buy = 80; +input double RSI_Target_Sell = 57; +input int BarsToWait = 4; + +input group "=== Execution ===" +input double LotSize = 0.1; +input int MagicNumber = 129102316; +input int Slippage = 3; + +input group "=== Deep Markov self-optimization ===" +input double DMR_LearnTransition = 0.05; +input double DMR_LearnEmission = 0.02; +input double DMR_LearnWin = 0.03; +input double DMR_LearnLoss = 0.015; +input bool DMR_PersistGlobals = true; +input string DMR_GlobalPrefix = "DMR_XAU_"; +input bool DMR_LogEachBar = false; + +//--- Global variables +CTrade trade; +CDeepMarkovRegimeModel g_dm; + +int rsi_handle; +int atr_fast_handle; +int atr_slow_handle; +double rsi_buffer[]; +double rsi_prev, rsi_current, rsi_two_bars_ago; +double atr_fast, atr_slow; + +bool position_open = false; +int position_ticket = 0; +ENUM_POSITION_TYPE current_position_type = POSITION_TYPE_BUY; +datetime last_bar_time = 0; +bool rsi_against_position = false; +int bars_against_count = 0; + +int entry_regime = 0; + +//+------------------------------------------------------------------+ +int OnInit() +{ + rsi_handle = iRSI(_Symbol, TimeFrame, RSI_Period, RSI_Applied_Price); + if(rsi_handle == INVALID_HANDLE) + return(INIT_FAILED); + + atr_fast_handle = iATR(_Symbol, TimeFrame, 8); + atr_slow_handle = iATR(_Symbol, TimeFrame, 34); + if(atr_fast_handle == INVALID_HANDLE || atr_slow_handle == INVALID_HANDLE) + return(INIT_FAILED); + + trade.SetExpertMagicNumber(MagicNumber); + trade.SetDeviationInPoints(Slippage); + trade.SetTypeFilling(ORDER_FILLING_FOK); + + ArraySetAsSeries(rsi_buffer, true); + + g_dm.SetSeed(MagicNumber); + g_dm.SetLearningRates(DMR_LearnTransition, DMR_LearnEmission, DMR_LearnWin, DMR_LearnLoss); + g_dm.SetBaseThresholds(RSI_Overbought, RSI_Oversold, RSI_Target_Buy, RSI_Target_Sell, BarsToWait); + + if(DMR_PersistGlobals) + { + if(g_dm.LoadFromGlobals(DMR_GlobalPrefix)) + Print("RSIScalpingXAUUSD_DeepMarkov: loaded persisted Markov state from globals."); + } + + return(INIT_SUCCEEDED); +} + +//+------------------------------------------------------------------+ +void OnDeinit(const int reason) +{ + if(DMR_PersistGlobals) + g_dm.SaveToGlobals(DMR_GlobalPrefix); + + if(rsi_handle != INVALID_HANDLE) + IndicatorRelease(rsi_handle); + if(atr_fast_handle != INVALID_HANDLE) + IndicatorRelease(atr_fast_handle); + if(atr_slow_handle != INVALID_HANDLE) + IndicatorRelease(atr_slow_handle); +} + +//+------------------------------------------------------------------+ +void OnTick() +{ + if(Bars(_Symbol, TimeFrame) < RSI_Period + 5) + return; + + datetime current_bar_time = iTime(_Symbol, TimeFrame, 0); + if(current_bar_time == last_bar_time) + return; + + last_bar_time = current_bar_time; + + if(!UpdateRSI()) + return; + + if(!UpdateATR()) + return; + + const double f0 = rsi_current / 100.0; + const double dr = rsi_current - rsi_prev; + const double f1 = MathTanh(dr / 10.0) * 0.5 + 0.5; + double ratio = 1.0; + if(atr_slow > 1.0e-12) + ratio = atr_fast / atr_slow; + if(ratio < 0.15) + ratio = 0.15; + if(ratio > 2.5) + ratio = 2.5; + const double f2 = ratio / 2.5; + + g_dm.Update(f0, f1, f2); + + if(DMR_LogEachBar) + Print(g_dm.DebugStateLine()); + + ResyncPositionFromMarket(); + + CheckExistingPosition(); + + if(!position_open && !PositionExistsByMagic(_Symbol, (ulong)MagicNumber)) + CheckEntrySignals(); +} + +//+------------------------------------------------------------------+ +bool UpdateRSI() +{ + if(CopyBuffer(rsi_handle, 0, 0, 3, rsi_buffer) < 3) + return false; + + rsi_current = rsi_buffer[0]; + rsi_prev = rsi_buffer[1]; + rsi_two_bars_ago = rsi_buffer[2]; + return true; +} + +//+------------------------------------------------------------------+ +bool UpdateATR() +{ + double af[], as[]; + ArrayResize(af, 1); + ArrayResize(as, 1); + ArraySetAsSeries(af, true); + ArraySetAsSeries(as, true); + if(CopyBuffer(atr_fast_handle, 0, 0, 1, af) < 1) + return false; + if(CopyBuffer(atr_slow_handle, 0, 0, 1, as) < 1) + return false; + atr_fast = af[0]; + atr_slow = as[0]; + return true; +} + +//+------------------------------------------------------------------+ +void ResyncPositionFromMarket() +{ + if(position_open) + return; + ulong t = GetPositionTicketByMagic(_Symbol, (ulong)MagicNumber); + if(t == 0 || !PositionSelectByTicket(t)) + return; + position_ticket = (int)t; + position_open = true; + current_position_type = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); + entry_regime = g_dm.ArgMaxPi(); +} + +//+------------------------------------------------------------------+ +double EffectiveOverbought() { return g_dm.EffectiveOverbought(); } +double EffectiveOversold() { return g_dm.EffectiveOversold(); } +double EffectiveTargetBuy() { return g_dm.EffectiveTargetBuy(); } +double EffectiveTargetSell() { return g_dm.EffectiveTargetSell(); } +int EffectiveBarsToWait() { return g_dm.EffectiveBarsToWait(); } + +//+------------------------------------------------------------------+ +void CheckExistingPosition() +{ + if(!position_open) + return; + + if(!PositionSelectByTicketAndMagic((ulong)position_ticket, (ulong)MagicNumber)) + { + position_open = false; + position_ticket = 0; + rsi_against_position = false; + bars_against_count = 0; + return; + } + + const double ob = EffectiveOverbought(); + const double os = EffectiveOversold(); + const double tb = EffectiveTargetBuy(); + const double ts = EffectiveTargetSell(); + const int bw = EffectiveBarsToWait(); + + if(current_position_type == POSITION_TYPE_BUY) + { + if(rsi_current < os) + { + if(!rsi_against_position) + { + rsi_against_position = true; + bars_against_count = 1; + } + else + bars_against_count++; + + if(bars_against_count >= bw) + { + ClosePosition(); + return; + } + } + else + { + if(rsi_against_position) + { + rsi_against_position = false; + bars_against_count = 0; + } + if(rsi_current >= tb) + ClosePosition(); + } + } + else if(current_position_type == POSITION_TYPE_SELL) + { + if(rsi_current > ob) + { + if(!rsi_against_position) + { + rsi_against_position = true; + bars_against_count = 1; + } + else + bars_against_count++; + + if(bars_against_count >= bw) + { + ClosePosition(); + return; + } + } + else + { + if(rsi_against_position) + { + rsi_against_position = false; + bars_against_count = 0; + } + if(rsi_current <= ts) + ClosePosition(); + } + } +} + +//+------------------------------------------------------------------+ +void CheckEntrySignals() +{ + const double os = EffectiveOversold(); + const double ob = EffectiveOverbought(); + + if(rsi_two_bars_ago <= os && rsi_prev > os) + OpenBuyPosition(); + + if(rsi_two_bars_ago >= ob && rsi_prev < ob) + OpenSellPosition(); +} + +//+------------------------------------------------------------------+ +void OpenBuyPosition() +{ + double ask = SymbolInfoDouble(_Symbol, SYMBOL_ASK); + entry_regime = g_dm.ArgMaxPi(); + + if(trade.Buy(LotSize, _Symbol, ask, 0, 0, "RSI DM Buy")) + { + ulong pt = GetPositionTicketByMagic(_Symbol, (ulong)MagicNumber); + position_ticket = (int)pt; + position_open = true; + current_position_type = POSITION_TYPE_BUY; + } +} + +//+------------------------------------------------------------------+ +void OpenSellPosition() +{ + double bid = SymbolInfoDouble(_Symbol, SYMBOL_BID); + entry_regime = g_dm.ArgMaxPi(); + + if(trade.Sell(LotSize, _Symbol, bid, 0, 0, "RSI DM Sell")) + { + ulong pt = GetPositionTicketByMagic(_Symbol, (ulong)MagicNumber); + position_ticket = (int)pt; + position_open = true; + current_position_type = POSITION_TYPE_SELL; + } +} + +//+------------------------------------------------------------------+ +void ClosePosition() +{ + double profit = 0.0; + if(PositionSelectByTicket(position_ticket)) + profit = PositionGetDouble(POSITION_PROFIT); + + const int regime = entry_regime; + + if(ClosePositionByMagic(trade, _Symbol, (ulong)MagicNumber)) + { + position_open = false; + position_ticket = 0; + rsi_against_position = false; + bars_against_count = 0; + g_dm.OnTradeClosed(regime, profit); + return; + } + if(!PositionExistsByMagic(_Symbol, (ulong)MagicNumber)) + { + position_open = false; + position_ticket = 0; + rsi_against_position = false; + bars_against_count = 0; + g_dm.OnTradeClosed(regime, profit); + return; + } + Print("RSIScalpingXAUUSD_DeepMarkov: close failed (will retry). retcode=", + trade.ResultRetcode(), " lastError=", GetLastError()); +} diff --git a/frontline/MQL5/RSIScalpingXAUUSD_PlusHours/main.mq5 b/frontline/MQL5/RSIScalpingXAUUSD_PlusHours/main.mq5 new file mode 100644 index 0000000..d393e76 --- /dev/null +++ b/frontline/MQL5/RSIScalpingXAUUSD_PlusHours/main.mq5 @@ -0,0 +1,307 @@ +//+------------------------------------------------------------------+ +//| RSIScalpingXAUUSD_PlusHours.mq5 | +//| Same logic as RSIScalpingXAUUSD + trading session filter | +//| (server time), day-of-week filter, and optional close-all when | +//| outside allowed hours/days | +//+------------------------------------------------------------------+ +#property copyright "Copyright 2025, MetaQuotes Ltd." +#property link "https://www.mql5.com" +#property version "1.00" + +#include +#include "../_united/MagicNumberHelpers.mqh" + +input group "=== RSI (same as RSIScalpingXAUUSD) ===" +input ENUM_TIMEFRAMES TimeFrame = PERIOD_H1; +input int RSI_Period = 14; +input ENUM_APPLIED_PRICE RSI_Applied_Price = PRICE_CLOSE; +input double RSI_Overbought = 71; +input double RSI_Oversold = 57; +input double RSI_Target_Buy = 80; +input double RSI_Target_Sell = 57; +input int BarsToWait = 4; +input double LotSize = 0.1; +input int MagicNumber = 129102317; +input int Slippage = 3; + +input group "=== Trading hours (broker server time) ===" +input bool InpUseTradingHours = true; +input int InpTradeHourStart = 8; +input int InpTradeHourEnd = 22; +input bool InpCloseOutsideTradingHours = true; + +input group "=== Trading days (broker server time) ===" +input bool InpUseTradingDays = true; +input bool InpTradeMonday = true; +input bool InpTradeTuesday = true; +input bool InpTradeWednesday = true; +input bool InpTradeThursday = true; +input bool InpTradeFriday = true; +input bool InpTradeSaturday = true; +input bool InpTradeSunday = true; +input bool InpCloseOutsideTradingDays = true; + +CTrade trade; +int rsi_handle; +double rsi_buffer[]; +double rsi_prev, rsi_current, rsi_two_bars_ago; +bool position_open = false; +int position_ticket = 0; +ENUM_POSITION_TYPE current_position_type = POSITION_TYPE_BUY; +datetime last_bar_time = 0; +bool rsi_against_position = false; +int bars_against_count = 0; + +bool IsWithinTradingHours() +{ + if(!InpUseTradingHours) + return true; + + MqlDateTime dt; + TimeToStruct(TimeCurrent(), dt); + const int h = dt.hour; + const int hs = MathMax(0, MathMin(23, InpTradeHourStart)); + const int he = MathMax(0, MathMin(23, InpTradeHourEnd)); + + if(hs == he) + return true; + + if(hs < he) + return (h >= hs && h < he); + + return (h >= hs || h < he); +} + +bool IsTradingDayAllowed() +{ + if(!InpUseTradingDays) + return true; + + MqlDateTime dt; + TimeToStruct(TimeCurrent(), dt); + switch(dt.day_of_week) + { + case 0: return InpTradeSunday; + case 1: return InpTradeMonday; + case 2: return InpTradeTuesday; + case 3: return InpTradeWednesday; + case 4: return InpTradeThursday; + case 5: return InpTradeFriday; + case 6: return InpTradeSaturday; + } + return false; +} + +int OnInit() +{ + rsi_handle = iRSI(_Symbol, TimeFrame, RSI_Period, RSI_Applied_Price); + if(rsi_handle == INVALID_HANDLE) + return(INIT_FAILED); + + trade.SetExpertMagicNumber(MagicNumber); + trade.SetDeviationInPoints(Slippage); + trade.SetTypeFilling(ORDER_FILLING_FOK); + + ArraySetAsSeries(rsi_buffer, true); + return(INIT_SUCCEEDED); +} + +void OnDeinit(const int reason) +{ + if(rsi_handle != INVALID_HANDLE) + IndicatorRelease(rsi_handle); +} + +void OnTick() +{ + if(Bars(_Symbol, TimeFrame) < RSI_Period + 2) + return; + + datetime current_bar_time = iTime(_Symbol, TimeFrame, 0); + if(current_bar_time == last_bar_time) + return; + + last_bar_time = current_bar_time; + + if(!UpdateRSI()) + return; + + ResyncPositionFromMarket(); + + const bool inHours = IsWithinTradingHours(); + const bool inDays = IsTradingDayAllowed(); + const bool inSession = inHours && inDays; + + if(position_open && !inSession && + ((InpUseTradingHours && InpCloseOutsideTradingHours && !inHours) || + (InpUseTradingDays && InpCloseOutsideTradingDays && !inDays))) + { + ClosePosition(); + return; + } + + CheckExistingPosition(); + + if(!position_open && !PositionExistsByMagic(_Symbol, (ulong)MagicNumber) && inSession) + CheckEntrySignals(); +} + +bool UpdateRSI() +{ + if(CopyBuffer(rsi_handle, 0, 0, 3, rsi_buffer) < 3) + return false; + + rsi_current = rsi_buffer[0]; + rsi_prev = rsi_buffer[1]; + rsi_two_bars_ago = rsi_buffer[2]; + return true; +} + +void ResyncPositionFromMarket() +{ + if(position_open) + return; + ulong t = GetPositionTicketByMagic(_Symbol, (ulong)MagicNumber); + if(t == 0 || !PositionSelectByTicket(t)) + return; + position_ticket = (int)t; + position_open = true; + current_position_type = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); +} + +void CheckExistingPosition() +{ + if(!position_open) + return; + + if(!PositionSelectByTicketAndMagic(position_ticket, MagicNumber)) + { + position_open = false; + position_ticket = 0; + rsi_against_position = false; + bars_against_count = 0; + return; + } + + if(current_position_type == POSITION_TYPE_BUY) + { + if(rsi_current < RSI_Oversold) + { + if(!rsi_against_position) + { + rsi_against_position = true; + bars_against_count = 1; + } + else + bars_against_count++; + + if(bars_against_count >= BarsToWait) + { + ClosePosition(); + return; + } + } + else + { + if(rsi_against_position) + { + rsi_against_position = false; + bars_against_count = 0; + } + + if(rsi_current >= RSI_Target_Buy) + ClosePosition(); + } + } + else if(current_position_type == POSITION_TYPE_SELL) + { + if(rsi_current > RSI_Overbought) + { + if(!rsi_against_position) + { + rsi_against_position = true; + bars_against_count = 1; + } + else + bars_against_count++; + + if(bars_against_count >= BarsToWait) + { + ClosePosition(); + return; + } + } + else + { + if(rsi_against_position) + { + rsi_against_position = false; + bars_against_count = 0; + } + + if(rsi_current <= RSI_Target_Sell) + ClosePosition(); + } + } +} + +void CheckEntrySignals() +{ + if(rsi_two_bars_ago <= RSI_Oversold && rsi_prev > RSI_Oversold) + OpenBuyPosition(); + + if(rsi_two_bars_ago >= RSI_Overbought && rsi_prev < RSI_Overbought) + OpenSellPosition(); +} + +void OpenBuyPosition() +{ + double ask = SymbolInfoDouble(_Symbol, SYMBOL_ASK); + trade.SetExpertMagicNumber(MagicNumber); + if(trade.Buy(LotSize, _Symbol, ask, 0, 0, "RSI Scalping Hours Buy")) + { + ulong t = GetPositionTicketByMagic(_Symbol, (ulong)MagicNumber); + position_ticket = (int)t; + position_open = (position_ticket != 0); + current_position_type = POSITION_TYPE_BUY; + rsi_against_position = false; + bars_against_count = 0; + } +} + +void OpenSellPosition() +{ + double bid = SymbolInfoDouble(_Symbol, SYMBOL_BID); + trade.SetExpertMagicNumber(MagicNumber); + if(trade.Sell(LotSize, _Symbol, bid, 0, 0, "RSI Scalping Hours Sell")) + { + ulong t = GetPositionTicketByMagic(_Symbol, (ulong)MagicNumber); + position_ticket = (int)t; + position_open = (position_ticket != 0); + current_position_type = POSITION_TYPE_SELL; + rsi_against_position = false; + bars_against_count = 0; + } +} + +void ClosePosition() +{ + if(ClosePositionByMagic(trade, _Symbol, (ulong)MagicNumber)) + { + position_open = false; + position_ticket = 0; + rsi_against_position = false; + bars_against_count = 0; + return; + } + if(!PositionExistsByMagic(_Symbol, (ulong)MagicNumber)) + { + position_open = false; + position_ticket = 0; + rsi_against_position = false; + bars_against_count = 0; + return; + } + Print("RSIScalpingXAUUSD_PlusHours: close failed (will retry). retcode=", + trade.ResultRetcode(), " lastError=", GetLastError()); +} diff --git a/frontline/MQL5/RSIScalpingXAUUSD_Trailing/main.mq5 b/frontline/MQL5/RSIScalpingXAUUSD_Trailing/main.mq5 new file mode 100644 index 0000000..0dc1208 --- /dev/null +++ b/frontline/MQL5/RSIScalpingXAUUSD_Trailing/main.mq5 @@ -0,0 +1,367 @@ +//+------------------------------------------------------------------+ +//| RSIScalpingXAUUSD_Trailing.mq5 | +//| Copyright 2025, MetaQuotes Ltd. | +//| https://www.mql5.com | +//+------------------------------------------------------------------+ +#property copyright "Copyright 2025, MetaQuotes Ltd." +#property link "https://www.mql5.com" +#property version "1.06" + +#include +#include "../_united/MagicNumberHelpers.mqh" + +//--- Input parameters +input ENUM_TIMEFRAMES TimeFrame = PERIOD_H1; // Timeframe for Analysis +input int RSI_Period = 14; // RSI Period +input ENUM_APPLIED_PRICE RSI_Applied_Price = PRICE_CLOSE; // RSI Applied Price +input double RSI_Overbought = 71; // RSI Overbought Level +input double RSI_Oversold = 57; // RSI Oversold Level +input double RSI_Target_Buy = 80; // RSI Target for Buy Exit +input double RSI_Target_Sell = 57; // RSI Target for Sell Exit +input int BarsToWait = 4; // Bars to wait when RSI goes against position +input bool UseRSI_StopLoss = true; // Close on RSI stop (separate timeframe below) +input ENUM_TIMEFRAMES RSI_StopLoss_TimeFrame = PERIOD_H1; // RSI timeframe for stop-loss only +input double RSI_StopLoss_BuyBelow = 30; // Close buy when stop-timeframe RSI drops below this +input double RSI_StopLoss_SellAbove = 70; // Close sell when stop-timeframe RSI rises above this +input double LotSize = 0.1; // Lot Size +input int MagicNumber = 129102316; // Magic Number (distinct from non-trailing EA) +input int Slippage = 3; // Slippage in points + +//--- Global variables +CTrade trade; +int rsi_handle; +int rsi_stoploss_handle = INVALID_HANDLE; +double rsi_buffer[]; +double rsi_stoploss_buffer[]; +double rsi_prev, rsi_current, rsi_two_bars_ago; +double rsi_stoploss_current = 0.0; +MqlTick rsi_stoploss_last_tick; +bool position_open = false; +int position_ticket = 0; +ENUM_POSITION_TYPE current_position_type = POSITION_TYPE_BUY; +datetime last_bar_time = 0; +bool rsi_against_position = false; +int bars_against_count = 0; + +//+------------------------------------------------------------------+ +//| Expert initialization function | +//+------------------------------------------------------------------+ +int OnInit() +{ + rsi_handle = iRSI(_Symbol, TimeFrame, RSI_Period, RSI_Applied_Price); + if(rsi_handle == INVALID_HANDLE) + { + return(INIT_FAILED); + } + + rsi_stoploss_handle = iRSI(_Symbol, RSI_StopLoss_TimeFrame, RSI_Period, RSI_Applied_Price); + if(rsi_stoploss_handle == INVALID_HANDLE) + { + IndicatorRelease(rsi_handle); + return(INIT_FAILED); + } + + trade.SetExpertMagicNumber(MagicNumber); + trade.SetDeviationInPoints(Slippage); + trade.SetTypeFilling(ORDER_FILLING_FOK); + + ArraySetAsSeries(rsi_buffer, true); + ArraySetAsSeries(rsi_stoploss_buffer, true); + + return(INIT_SUCCEEDED); +} + +//+------------------------------------------------------------------+ +//| Expert deinitialization function | +//+------------------------------------------------------------------+ +void OnDeinit(const int reason) +{ + if(rsi_handle != INVALID_HANDLE) + IndicatorRelease(rsi_handle); + if(rsi_stoploss_handle != INVALID_HANDLE) + IndicatorRelease(rsi_stoploss_handle); +} + +//+------------------------------------------------------------------+ +//| Expert tick function | +//+------------------------------------------------------------------+ +void OnTick() +{ + ResyncPositionFromMarket(); + + const int min_bars = RSI_Period + 2; + if(position_open) + { + if(UseRSI_StopLoss && Bars(_Symbol, RSI_StopLoss_TimeFrame) >= min_bars) + { + if(UpdateRSI_StopLoss()) + CheckRSIStopLossClose(); + } + } + + if(Bars(_Symbol, TimeFrame) < min_bars) + { + return; + } + + datetime current_bar_time = iTime(_Symbol, TimeFrame, 0); + if(current_bar_time == last_bar_time) + { + return; + } + + last_bar_time = current_bar_time; + + if(!UpdateRSI()) + { + return; + } + + ResyncPositionFromMarket(); + + CheckExistingPosition(); + + if(!position_open && !PositionExistsByMagic(_Symbol, MagicNumber)) + { + CheckEntrySignals(); + } +} + +//+------------------------------------------------------------------+ +//| Update RSI values | +//+------------------------------------------------------------------+ +bool UpdateRSI() +{ + if(CopyBuffer(rsi_handle, 0, 0, 3, rsi_buffer) < 3) + { + return false; + } + + rsi_current = rsi_buffer[0]; + rsi_prev = rsi_buffer[1]; + rsi_two_bars_ago = rsi_buffer[2]; + + return true; +} + +//+------------------------------------------------------------------+ +//| Stop-loss RSI (RSI_StopLoss_TimeFrame) | +//| Uses latest MqlTick before CopyBuffer so RSI matches current quote. | +//+------------------------------------------------------------------+ +bool UpdateRSI_StopLoss() +{ + if(rsi_stoploss_handle == INVALID_HANDLE) + return false; + if(!SymbolInfoTick(_Symbol, rsi_stoploss_last_tick)) + return false; + + int calc = BarsCalculated(rsi_stoploss_handle); + if(calc <= 0) + return false; + + if(CopyBuffer(rsi_stoploss_handle, 0, 0, 1, rsi_stoploss_buffer) < 1) + return false; + rsi_stoploss_current = rsi_stoploss_buffer[0]; + return true; +} + +void ResyncPositionFromMarket() +{ + if(position_open) + return; + ulong t = GetPositionTicketByMagic(_Symbol, (ulong)MagicNumber); + if(t == 0 || !PositionSelectByTicket(t)) + return; + position_ticket = (int)t; + position_open = true; + current_position_type = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); +} + +//+------------------------------------------------------------------+ +//| RSI-based stop: RSI_StopLoss_TimeFrame series (independent of TimeFrame) | +//+------------------------------------------------------------------+ +void CheckRSIStopLossClose() +{ + if(!UseRSI_StopLoss || !position_open) + return; + + if(!PositionSelectByTicketAndMagic(position_ticket, MagicNumber)) + { + position_open = false; + position_ticket = 0; + rsi_against_position = false; + bars_against_count = 0; + return; + } + + if(current_position_type == POSITION_TYPE_BUY) + { + if(rsi_stoploss_current < RSI_StopLoss_BuyBelow) + ClosePosition(); + } + else if(current_position_type == POSITION_TYPE_SELL) + { + if(rsi_stoploss_current > RSI_StopLoss_SellAbove) + ClosePosition(); + } +} + +//+------------------------------------------------------------------+ +//| Check existing position for exit conditions | +//+------------------------------------------------------------------+ +void CheckExistingPosition() +{ + if(!position_open) + { + return; + } + + if(!PositionSelectByTicketAndMagic(position_ticket, MagicNumber)) + { + position_open = false; + position_ticket = 0; + rsi_against_position = false; + bars_against_count = 0; + return; + } + + if(current_position_type == POSITION_TYPE_BUY) + { + if(rsi_current < RSI_Oversold) + { + if(!rsi_against_position) + { + rsi_against_position = true; + bars_against_count = 1; + } + else + { + bars_against_count++; + } + + if(bars_against_count >= BarsToWait) + { + ClosePosition(); + return; + } + } + else + { + if(rsi_against_position) + { + rsi_against_position = false; + bars_against_count = 0; + } + + if(rsi_current >= RSI_Target_Buy) + { + ClosePosition(); + } + } + } + else if(current_position_type == POSITION_TYPE_SELL) + { + if(rsi_current > RSI_Overbought) + { + if(!rsi_against_position) + { + rsi_against_position = true; + bars_against_count = 1; + } + else + { + bars_against_count++; + } + + if(bars_against_count >= BarsToWait) + { + ClosePosition(); + return; + } + } + else + { + if(rsi_against_position) + { + rsi_against_position = false; + bars_against_count = 0; + } + + if(rsi_current <= RSI_Target_Sell) + { + ClosePosition(); + } + } + } +} + +//+------------------------------------------------------------------+ +//| Check for entry signals | +//+------------------------------------------------------------------+ +void CheckEntrySignals() +{ + if(rsi_two_bars_ago <= RSI_Oversold && rsi_prev > RSI_Oversold) + OpenBuyPosition(); + + if(rsi_two_bars_ago >= RSI_Overbought && rsi_prev < RSI_Overbought) + OpenSellPosition(); +} + +//+------------------------------------------------------------------+ +//| Open buy position | +//+------------------------------------------------------------------+ +void OpenBuyPosition() +{ + double ask = SymbolInfoDouble(_Symbol, SYMBOL_ASK); + + if(trade.Buy(LotSize, _Symbol, ask, 0, 0, "RSI Scalping Buy")) + { + ulong t = GetPositionTicketByMagic(_Symbol, (ulong)MagicNumber); + if(t != 0) + position_ticket = (int)t; + position_open = true; + current_position_type = POSITION_TYPE_BUY; + } +} + +//+------------------------------------------------------------------+ +//| Open sell position | +//+------------------------------------------------------------------+ +void OpenSellPosition() +{ + double bid = SymbolInfoDouble(_Symbol, SYMBOL_BID); + + if(trade.Sell(LotSize, _Symbol, bid, 0, 0, "RSI Scalping Sell")) + { + ulong t = GetPositionTicketByMagic(_Symbol, (ulong)MagicNumber); + if(t != 0) + position_ticket = (int)t; + position_open = true; + current_position_type = POSITION_TYPE_SELL; + } +} + +//+------------------------------------------------------------------+ +//| Close current position | +//+------------------------------------------------------------------+ +void ClosePosition() +{ + if(ClosePositionByMagic(trade, _Symbol, (ulong)MagicNumber)) + { + position_open = false; + position_ticket = 0; + rsi_against_position = false; + bars_against_count = 0; + return; + } + if(!PositionExistsByMagic(_Symbol, (ulong)MagicNumber)) + { + position_open = false; + position_ticket = 0; + rsi_against_position = false; + bars_against_count = 0; + return; + } + Print("RSIScalpingXAUUSD: close failed (will retry on next bar). retcode=", + trade.ResultRetcode(), " lastError=", GetLastError()); +} diff --git a/frontline/MQL5/RSI_secret_sauce_XAUUSD/main.mq5 b/frontline/MQL5/RSI_secret_sauce_XAUUSD/main.mq5 index 1778a0f..425b7f7 100644 --- a/frontline/MQL5/RSI_secret_sauce_XAUUSD/main.mq5 +++ b/frontline/MQL5/RSI_secret_sauce_XAUUSD/main.mq5 @@ -14,7 +14,7 @@ //--- Input Parameters input group "=== Trading Settings ===" -input string InpSymbol = "XAUUSD"; // Trading Symbol (set was tuned on BTCUSD) +input string InpSymbol = "XAUUSD"; // Default gold; same numbers as secret_sauce.set (that file uses BTCUSD as symbol) input double InpLotSize = 0.1; // Lot Size (Profiles/Tester/secret_sauce.set) input int InpMagicNumber = 789012; // Magic Number input int InpSlippage = 10; // Slippage in points diff --git a/frontline/MQL5/SuperEMAXAUUSD/SuperEMA.set b/frontline/MQL5/SuperEMAXAUUSD/SuperEMA.set new file mode 100644 index 0000000..f52ec17 --- /dev/null +++ b/frontline/MQL5/SuperEMAXAUUSD/SuperEMA.set @@ -0,0 +1,36 @@ +; SuperEMA — defaults aligned with lab/EAs/SuperEMA.mq5 (v1.01) +; Load from Strategy Tester → Inputs → context menu → Load +; +; === Market === +InpSymbol= +InpTimeframe=15||15||0||49153||N +InpLots=0.01||0.01||0.01||0.10||N +InpSlippagePoints=55||20||5||120||Y +InpMagic=940001||940001||1||9400010||N +; === EMA (trend & structure) === +InpEmaFast=40||20||10||120||Y +InpEmaMid=180||60||15||200||Y +InpEmaSlow=125||100||25||400||Y +InpEmaTrendBars=3||1||1||3||Y +; === CCI === +InpCciPeriod=17||7||1||28||Y +InpCciOverbought=80.0||80.0||10.0||140.0||Y +InpCciOversold=-140.0||-140.0||10.0||-80.0||Y +InpPullbackCciLookback=20||4||2||24||Y +; === MACD (histogram = main - signal) === +InpMacdFast=14||8||2||20||Y +InpMacdSlow=38||20||2||40||Y +InpMacdSignal=9||5||1||15||Y +; === Strategy === +InpEntryStyle=1||0||1||2||Y +InpOneTradeOnly=true||false||0||true||N +InpUseStructuralSL=false||false||0||true||Y +InpSlBufferPoints=110.0||20.0||10.0||200.0||Y +; === Exits (so trades do not run forever) === +InpExitOnTrendFlip=false||false||0||true||Y +InpExitOnMacdFlip=false||false||0||true||Y +InpExitOnCciZeroCross=true||false||0||true||Y +InpMaxHoldingBars=168||48||24||480||Y +InpExitBelowMidEma=false||false||0||true||Y +; === Debug === +InpDebugLogs=false||false||0||true||N diff --git a/frontline/MQL5/SuperEMAXAUUSD/main.mq5 b/frontline/MQL5/SuperEMAXAUUSD/main.mq5 new file mode 100644 index 0000000..07831c3 --- /dev/null +++ b/frontline/MQL5/SuperEMAXAUUSD/main.mq5 @@ -0,0 +1,448 @@ +//+------------------------------------------------------------------+ +//| SuperEMA.mq5 | +//| EMA + CCI + MACD histogram — trend filter, momentum confirmation | +//+------------------------------------------------------------------+ +#property strict +#property version "1.01" + +#include + +enum ENUM_ENTRY_STYLE +{ + ENTRY_CCIZERO_MACD = 0, // EMA trend + CCI crosses zero + MACD histogram agrees + ENTRY_LAMBERT = 1, // EMA trend + CCI crosses ±100 + MACD histogram agrees + ENTRY_PULLBACK = 2 // Uptrend: pullback to fast EMA + CCI was oversold + CCI crosses up through 0 + MACD > 0 (mirror for sells) +}; + +input group "=== Market ===" +input string InpSymbol = ""; +input ENUM_TIMEFRAMES InpTimeframe = PERIOD_M15; +input double InpLots = 0.01; +input int InpSlippagePoints = 55; +input int InpMagic = 940001; + +input group "=== EMA (trend & structure) ===" +input int InpEmaFast = 40; +input int InpEmaMid = 180; +input int InpEmaSlow = 125; +input int InpEmaTrendBars = 3; // closed bar shift for EMA reads + +input group "=== CCI ===" +input int InpCciPeriod = 17; +input double InpCciOverbought = 80.0; +input double InpCciOversold = -140.0; +input int InpPullbackCciLookback = 20; // bars to check prior CCI oversold/overbought + +input group "=== MACD (histogram = main - signal) ===" +input int InpMacdFast = 14; +input int InpMacdSlow = 38; +input int InpMacdSignal = 9; + +input group "=== Strategy ===" +input ENUM_ENTRY_STYLE InpEntryStyle = ENTRY_LAMBERT; +input bool InpOneTradeOnly = true; +input bool InpUseStructuralSL = false; +input double InpSlBufferPoints = 110; + +input group "=== Exits (so trades do not run forever) ===" +input bool InpExitOnTrendFlip = false; // close when price vs slow EMA flips against position +input bool InpExitOnMacdFlip = false; // close when MACD histogram flips against position +input bool InpExitOnCciZeroCross = true; // long: CCI crosses below 0; short: CCI crosses above 0 +input int InpMaxHoldingBars = 168; // 0 = disabled (e.g. ~8 days M15) +input bool InpExitBelowMidEma = false; // long: close if close < mid EMA (invalidation) + +input group "=== Debug ===" +input bool InpDebugLogs = false; + +CTrade trade; +datetime g_lastBarTime = 0; + +string WorkSymbol() +{ + return (InpSymbol == "" || InpSymbol == NULL) ? _Symbol : InpSymbol; +} + +void Log(const string s) +{ + if(InpDebugLogs) + Print("[SuperEMA] ", s); +} + +bool IsNewBar(const string sym, const ENUM_TIMEFRAMES tf) +{ + datetime t = iTime(sym, tf, 0); + if(t <= 0 || t == g_lastBarTime) + return false; + g_lastBarTime = t; + return true; +} + +double EmaAt(const string sym, const ENUM_TIMEFRAMES tf, const int period, const int shift) +{ + int h = iMA(sym, tf, period, 0, MODE_EMA, PRICE_CLOSE); + if(h == INVALID_HANDLE) + return 0.0; + double b[1]; + if(CopyBuffer(h, 0, shift, 1, b) <= 0) + { + IndicatorRelease(h); + return 0.0; + } + IndicatorRelease(h); + return b[0]; +} + +double CciAt(const string sym, const ENUM_TIMEFRAMES tf, const int period, const int shift) +{ + int h = iCCI(sym, tf, period, PRICE_TYPICAL); + if(h == INVALID_HANDLE) + return 0.0; + double b[1]; + if(CopyBuffer(h, 0, shift, 1, b) <= 0) + { + IndicatorRelease(h); + return 0.0; + } + IndicatorRelease(h); + return b[0]; +} + +bool MacdHistAt(const string sym, const ENUM_TIMEFRAMES tf, const int fast, const int slow, const int signal, const int shift, double &hist) +{ + int h = iMACD(sym, tf, fast, slow, signal, PRICE_CLOSE); + if(h == INVALID_HANDLE) + return false; + double mainLine[1], sigLine[1]; + if(CopyBuffer(h, 0, shift, 1, mainLine) <= 0 || CopyBuffer(h, 1, shift, 1, sigLine) <= 0) + { + IndicatorRelease(h); + return false; + } + IndicatorRelease(h); + hist = mainLine[0] - sigLine[0]; + return true; +} + +bool TrendUp(const string sym, const int sh) +{ + double c = iClose(sym, InpTimeframe, sh); + double emaS = EmaAt(sym, InpTimeframe, InpEmaSlow, sh); + return (emaS > 0.0 && c > emaS); +} + +bool TrendDown(const string sym, const int sh) +{ + double c = iClose(sym, InpTimeframe, sh); + double emaS = EmaAt(sym, InpTimeframe, InpEmaSlow, sh); + return (emaS > 0.0 && c < emaS); +} + +bool CciCrossAboveZero(const string sym) +{ + double c1 = CciAt(sym, InpTimeframe, InpCciPeriod, 1); + double c2 = CciAt(sym, InpTimeframe, InpCciPeriod, 2); + return (c2 <= 0.0 && c1 > 0.0); +} + +bool CciCrossBelowZero(const string sym) +{ + double c1 = CciAt(sym, InpTimeframe, InpCciPeriod, 1); + double c2 = CciAt(sym, InpTimeframe, InpCciPeriod, 2); + return (c2 >= 0.0 && c1 < 0.0); +} + +bool CciCrossAbove100(const string sym) +{ + double c1 = CciAt(sym, InpTimeframe, InpCciPeriod, 1); + double c2 = CciAt(sym, InpTimeframe, InpCciPeriod, 2); + return (c2 < InpCciOverbought && c1 > InpCciOverbought); +} + +bool CciCrossBelowMinus100(const string sym) +{ + double c1 = CciAt(sym, InpTimeframe, InpCciPeriod, 1); + double c2 = CciAt(sym, InpTimeframe, InpCciPeriod, 2); + return (c2 > InpCciOversold && c1 < InpCciOversold); +} + +bool HadCciOversoldRecently(const string sym) +{ + for(int i = 2; i <= InpPullbackCciLookback + 1; i++) + { + double v = CciAt(sym, InpTimeframe, InpCciPeriod, i); + if(v <= InpCciOversold) + return true; + } + return false; +} + +bool HadCciOverboughtRecently(const string sym) +{ + for(int i = 2; i <= InpPullbackCciLookback + 1; i++) + { + double v = CciAt(sym, InpTimeframe, InpCciPeriod, i); + if(v >= InpCciOverbought) + return true; + } + return false; +} + +bool PullbackNearFastEmaLong(const string sym) +{ + double emaF = EmaAt(sym, InpTimeframe, InpEmaFast, 1); + double lo = iLow(sym, InpTimeframe, 1); + if(emaF <= 0.0) + return false; + return (lo <= emaF + InpSlBufferPoints * _Point * 3.0); +} + +bool PullbackNearFastEmaShort(const string sym) +{ + double emaF = EmaAt(sym, InpTimeframe, InpEmaFast, 1); + double hi = iHigh(sym, InpTimeframe, 1); + if(emaF <= 0.0) + return false; + return (hi >= emaF - InpSlBufferPoints * _Point * 3.0); +} + +int PositionsByMagic(const string sym, const int magic) +{ + int n = 0; + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + ulong t = PositionGetTicket(i); + if(t == 0) + continue; + if(PositionGetString(POSITION_SYMBOL) == sym && (int)PositionGetInteger(POSITION_MAGIC) == magic) + n++; + } + return n; +} + +void ComputeSLTP(const bool isBuy, const double entry, double &sl, double &tp) +{ + const string sym = WorkSymbol(); + sl = 0.0; + tp = 0.0; + if(!InpUseStructuralSL) + return; + double emaM = EmaAt(sym, InpTimeframe, InpEmaMid, InpEmaTrendBars); + double buf = InpSlBufferPoints * _Point; + if(isBuy) + sl = emaM - buf; + else + sl = emaM + buf; +} + +int BarsSinceOpen(const string sym, const datetime openTime) +{ + if(openTime <= 0) + return 0; + int sh = iBarShift(sym, InpTimeframe, openTime, false); + if(sh < 0) + return 999999; + return sh; +} + +void ClosePositionTicket(const ulong ticket, const string reason) +{ + trade.SetExpertMagicNumber(InpMagic); + if(trade.PositionClose(ticket)) + Log("Close: " + reason); +} + +void ManageSuperEMAExits(const string sym) +{ + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + ulong ticket = PositionGetTicket(i); + if(ticket == 0) + continue; + if(!PositionSelectByTicket(ticket)) + continue; + if(PositionGetString(POSITION_SYMBOL) != sym) + continue; + if((int)PositionGetInteger(POSITION_MAGIC) != InpMagic) + continue; + + ENUM_POSITION_TYPE ptype = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); + datetime openTime = (datetime)PositionGetInteger(POSITION_TIME); + + double h1 = 0.0; + if(!MacdHistAt(sym, InpTimeframe, InpMacdFast, InpMacdSlow, InpMacdSignal, 1, h1)) + continue; + + bool closeLong = false; + bool closeShort = false; + string reason = ""; + + if(InpMaxHoldingBars > 0) + { + int held = BarsSinceOpen(sym, openTime); + if(held >= InpMaxHoldingBars) + { + if(ptype == POSITION_TYPE_BUY) + closeLong = true; + else + closeShort = true; + reason = "time stop (max bars)"; + } + } + + if(ptype == POSITION_TYPE_BUY) + { + if(InpExitOnTrendFlip && TrendDown(sym, InpEmaTrendBars)) + { + closeLong = true; + reason = "trend flip (below slow EMA)"; + } + if(InpExitOnMacdFlip && h1 < 0.0) + { + closeLong = true; + reason = "MACD histogram < 0"; + } + if(InpExitOnCciZeroCross && CciCrossBelowZero(sym)) + { + closeLong = true; + reason = "CCI crossed below zero"; + } + if(InpExitBelowMidEma) + { + double c = iClose(sym, InpTimeframe, 1); + double emaM = EmaAt(sym, InpTimeframe, InpEmaMid, 1); + if(emaM > 0.0 && c < emaM) + { + closeLong = true; + reason = "close below mid EMA"; + } + } + if(closeLong) + ClosePositionTicket(ticket, reason); + } + else if(ptype == POSITION_TYPE_SELL) + { + if(InpExitOnTrendFlip && TrendUp(sym, InpEmaTrendBars)) + { + closeShort = true; + reason = "trend flip (above slow EMA)"; + } + if(InpExitOnMacdFlip && h1 > 0.0) + { + closeShort = true; + reason = "MACD histogram > 0"; + } + if(InpExitOnCciZeroCross && CciCrossAboveZero(sym)) + { + closeShort = true; + reason = "CCI crossed above zero"; + } + if(InpExitBelowMidEma) + { + double c = iClose(sym, InpTimeframe, 1); + double emaM = EmaAt(sym, InpTimeframe, InpEmaMid, 1); + if(emaM > 0.0 && c > emaM) + { + closeShort = true; + reason = "close above mid EMA"; + } + } + if(closeShort) + ClosePositionTicket(ticket, reason); + } + } +} + +int OnInit() +{ + string sym = WorkSymbol(); + if(!SymbolSelect(sym, true)) + { + Print("SuperEMA: cannot select symbol ", sym); + return INIT_FAILED; + } + trade.SetExpertMagicNumber(InpMagic); + trade.SetDeviationInPoints(InpSlippagePoints); + return INIT_SUCCEEDED; +} + +void OnTick() +{ + string sym = WorkSymbol(); + if(_Symbol != sym) + { + static datetime lastLog = 0; + datetime tb = iTime(_Symbol, PERIOD_M1, 0); + if(tb != lastLog && InpDebugLogs) + { + lastLog = tb; + Log("Chart symbol differs from WorkSymbol; attach to " + sym + " or set InpSymbol empty."); + } + return; + } + + if(!IsNewBar(sym, InpTimeframe)) + return; + + // Exits must run every bar; do not skip when a position exists (otherwise trades never close with SL=0/TP=0). + ManageSuperEMAExits(sym); + + if(InpOneTradeOnly && PositionsByMagic(sym, InpMagic) > 0) + return; + + const int sh = InpEmaTrendBars; + double h1 = 0.0, h2 = 0.0; + if(!MacdHistAt(sym, InpTimeframe, InpMacdFast, InpMacdSlow, InpMacdSignal, 1, h1) || + !MacdHistAt(sym, InpTimeframe, InpMacdFast, InpMacdSlow, InpMacdSignal, 2, h2)) + return; + + bool up = TrendUp(sym, sh); + bool dn = TrendDown(sym, sh); + + bool wantBuy = false; + bool wantSell = false; + + switch(InpEntryStyle) + { + case ENTRY_CCIZERO_MACD: + if(up && CciCrossAboveZero(sym) && h1 > 0.0) + wantBuy = true; + if(dn && CciCrossBelowZero(sym) && h1 < 0.0) + wantSell = true; + break; + + case ENTRY_LAMBERT: + if(up && CciCrossAbove100(sym) && h1 > 0.0) + wantBuy = true; + if(dn && CciCrossBelowMinus100(sym) && h1 < 0.0) + wantSell = true; + break; + + case ENTRY_PULLBACK: + if(up && HadCciOversoldRecently(sym) && CciCrossAboveZero(sym) && h1 > 0.0 && PullbackNearFastEmaLong(sym)) + wantBuy = true; + if(dn && HadCciOverboughtRecently(sym) && CciCrossBelowZero(sym) && h1 < 0.0 && PullbackNearFastEmaShort(sym)) + wantSell = true; + break; + } + + MqlTick tick; + if(!SymbolInfoTick(sym, tick)) + return; + + double sl = 0.0, tp = 0.0; + + if(wantBuy && !wantSell) + { + ComputeSLTP(true, tick.ask, sl, tp); + if(trade.Buy(InpLots, sym, tick.ask, sl, tp, "SuperEMA long")) + Log(StringFormat("BUY ask=%.5f sl=%.5f cci=%.2f macdHist=%.5f", tick.ask, sl, + CciAt(sym, InpTimeframe, InpCciPeriod, 1), h1)); + } + else if(wantSell && !wantBuy) + { + ComputeSLTP(false, tick.bid, sl, tp); + if(trade.Sell(InpLots, sym, tick.bid, sl, tp, "SuperEMA short")) + Log(StringFormat("SELL bid=%.5f sl=%.5f cci=%.2f macdHist=%.5f", tick.bid, sl, + CciAt(sym, InpTimeframe, InpCciPeriod, 1), h1)); + } +} diff --git a/frontline/MQL5/_united_dynamic/AdaptiveMonthlyRegime.mqh b/frontline/MQL5/_united_dynamic/AdaptiveMonthlyRegime.mqh new file mode 100644 index 0000000..4ba0fb7 --- /dev/null +++ b/frontline/MQL5/_united_dynamic/AdaptiveMonthlyRegime.mqh @@ -0,0 +1,639 @@ +//+------------------------------------------------------------------+ +//| AdaptiveMonthlyRegime.mqh | +//| Streak unit (input): closed calendar MONTHS or closed DAYS | +//| (server time). Losing streak -> optional CANARY (next full month | +//| or next full day at InpAdaptiveCanaryLotMult). Canary P/L > 0 -> | +//| full size; else HARD PAUSE. CanaryLotMult==0 -> hard pause, no | +//| canary. Per-strat DD lot cap still uses last closed *month* P/L. | +//| Include after all `input` blocks. | +//+------------------------------------------------------------------+ +#ifndef ADAPTIVE_MONTHLY_REGIME_MQH +#define ADAPTIVE_MONTHLY_REGIME_MQH + +#define UNITED_ADAPTIVE_N 13 +#define UNITED_AD_MAX_DAY_BUCKETS 400 + +#define UNITED_AD_DARVAS 0 +#define UNITED_AD_ES 1 +#define UNITED_AD_RC 2 +#define UNITED_AD_RM 3 +#define UNITED_AD_RS_APPL 4 +#define UNITED_AD_RS_BTC 5 +#define UNITED_AD_RS_NVDA 6 +#define UNITED_AD_RS_TSLA 7 +#define UNITED_AD_RS_XAU 8 +#define UNITED_AD_RRA_EUR 9 +#define UNITED_AD_RRA_AUD 10 +#define UNITED_AD_RSS 11 +#define UNITED_AD_SUPEREMA 12 + +bool g_adHardPaused[UNITED_ADAPTIVE_N]; +bool g_adCanaryWaiting[UNITED_ADAPTIVE_N]; +bool g_adCanaryActive[UNITED_ADAPTIVE_N]; +datetime g_adCanaryMonthStart[UNITED_ADAPTIVE_N]; +datetime g_adCanaryMonthEnd[UNITED_ADAPTIVE_N]; +datetime g_adHardPauseUntil[UNITED_ADAPTIVE_N]; +datetime g_adPostCanaryCooldownUntil[UNITED_ADAPTIVE_N]; + +double g_adLastClosedMonthPl[UNITED_ADAPTIVE_N]; + +datetime g_unitedAdaptiveLastUpdate = 0; + +string UnitedAdaptive_StratName(const int s) +{ + const string names[] = + { + "DarvasBox", "EMASlope", "RSICrossOver", "RM_MidPoint", + "RS_Scalp_AAPL", "RS_Scalp_BTC", "RS_Scalp_NVDA", "RS_Scalp_TSLA", "RS_Scalp_XAU", + "RRA_EURUSD", "RRA_AUDUSD", "SecretSauce", "SuperEMA" + }; + if(s >= 0 && s < UNITED_ADAPTIVE_N) + return names[s]; + return "?"; +} + +void UnitedAdaptive_Init() +{ + for(int i = 0; i < UNITED_ADAPTIVE_N; i++) + { + g_adHardPaused[i] = false; + g_adCanaryWaiting[i] = false; + g_adCanaryActive[i] = false; + g_adCanaryMonthStart[i] = 0; + g_adCanaryMonthEnd[i] = 0; + g_adHardPauseUntil[i] = 0; + g_adPostCanaryCooldownUntil[i] = 0; + g_adLastClosedMonthPl[i] = 0.0; + } + g_unitedAdaptiveLastUpdate = 0; +} + +datetime UnitedAdaptive_MonthStartInt(const int y, const int m) +{ + MqlDateTime d; + d.year = y; + d.mon = m; + d.day = 1; + d.hour = 0; + d.min = 0; + d.sec = 0; + return StructToTime(d); +} + +void UnitedAdaptive_NextYm(int &y, int &m) +{ + m++; + if(m > 12) + { + m = 1; + y++; + } +} + +void UnitedAdaptive_ClosedMonthYm(const int offsetFromLastComplete, int &y, int &m) +{ + MqlDateTime now; + TimeToStruct(TimeCurrent(), now); + int ly = now.year; + int lm = now.mon - 1; + if(lm < 1) + { + lm = 12; + ly--; + } + for(int i = 0; i < offsetFromLastComplete; i++) + { + lm--; + if(lm < 1) + { + lm = 12; + ly--; + } + } + y = ly; + m = lm; +} + +// Start of calendar day: offset 0 = yesterday 00:00 (last fully closed day), 1 = day before, ... +datetime UnitedAdaptive_ClosedDayStart(const int offsetFromLastCompleteDay) +{ + MqlDateTime n; + TimeToStruct(TimeCurrent(), n); + n.hour = 0; + n.min = 0; + n.sec = 0; + const datetime today0 = StructToTime(n); + return today0 - (datetime)((offsetFromLastCompleteDay + 1) * 86400); +} + +// Bucket index 0 = yesterday. -1 = today (incomplete) or invalid. +int UnitedAdaptive_ClosedDayOffsetFromDealTime(const datetime dt) +{ + MqlDateTime d, n; + TimeToStruct(dt, d); + d.hour = 0; + d.min = 0; + d.sec = 0; + const datetime dealDay0 = StructToTime(d); + TimeToStruct(TimeCurrent(), n); + n.hour = 0; + n.min = 0; + n.sec = 0; + const datetime today0 = StructToTime(n); + const long deltaSec = (long)(today0 - dealDay0); + if(deltaSec < 86400L) + return -1; + const int daysAgo = (int)(deltaSec / 86400L); + return daysAgo - 1; +} + +datetime UnitedAdaptive_AddMonthsWallClock(const datetime dt0, const int months) +{ + MqlDateTime t; + TimeToStruct(dt0, t); + for(int i = 0; i < months; i++) + { + t.mon++; + if(t.mon > 12) + { + t.mon = 1; + t.year++; + } + } + return StructToTime(t); +} + +bool UnitedAdaptive_RMDealMatches(const long mg) +{ + if(EnableRSIMidPointHijack) + { + if(RM_InpEnableRSIFollow && mg == (long)RM_InpMagicNumberRSIFollow) + return true; + if(RM_InpEnableRSIReverse && mg == (long)RM_InpMagicNumberRSIReverse) + return true; + if(RM_InpEnableEMACross && mg == (long)RM_InpMagicNumberEMACross) + return true; + } + return false; +} + +bool UnitedAdaptive_DealBelongsToStrat(const int s, const long mg) +{ + if(s == UNITED_AD_DARVAS) + return EnableDarvasBox && mg == (long)DB_MagicNumber; + if(s == UNITED_AD_ES) + return EnableEMASlopeDistance && mg == (long)ES_MagicNumber; + if(s == UNITED_AD_RC) + return EnableRSICrossOverReversal && mg == (long)RC_MagicNumber; + if(s == UNITED_AD_RM) + return UnitedAdaptive_RMDealMatches(mg); + if(s == UNITED_AD_RS_APPL) + return EnableRSIScalpingAPPL && mg == (long)RS_APPL_MagicNumber; + if(s == UNITED_AD_RS_BTC) + return EnableRSIScalpingBTCUSD && mg == (long)RS_BTCUSD_MagicNumber; + if(s == UNITED_AD_RS_NVDA) + return EnableRSIScalpingNVDA && mg == (long)RS_NVDA_MagicNumber; + if(s == UNITED_AD_RS_TSLA) + return EnableRSIScalpingTSLA && mg == (long)RS_TSLA_MagicNumber; + if(s == UNITED_AD_RS_XAU) + return EnableRSIScalpingXAUUSD && mg == (long)RS_XAUUSD_MagicNumber; + if(s == UNITED_AD_RRA_EUR) + return EnableRSIReversalEURUSD && mg == (long)RRA_EURUSD_MagicNumber; + if(s == UNITED_AD_RRA_AUD) + return EnableRSIReversalAUDUSD && mg == (long)RRA_AUDUSD_MagicNumber; + if(s == UNITED_AD_RSS) + return EnableRSISecretSauceXAUUSD && mg == (long)RSS_XAUUSD_MagicNumber; + if(s == UNITED_AD_SUPEREMA) + return EnableSuperEMA && mg == (long)SE_MagicNumber; + return false; +} + +double UnitedAdaptive_SumStratDealsRange(const int s, const datetime from, const datetime to) +{ + if(from >= to) + return 0.0; + if(!HistorySelect(from, to)) + return 0.0; + double sum = 0.0; + const int n = HistoryDealsTotal(); + for(int i = 0; i < n; i++) + { + const ulong t = HistoryDealGetTicket(i); + if(t == 0) + continue; + const long mg = (long)HistoryDealGetInteger(t, DEAL_MAGIC); + if(!UnitedAdaptive_DealBelongsToStrat(s, mg)) + continue; + sum += HistoryDealGetDouble(t, DEAL_PROFIT); + sum += HistoryDealGetDouble(t, DEAL_SWAP); + sum += HistoryDealGetDouble(t, DEAL_COMMISSION); + } + return sum; +} + +void UnitedAdaptive_StartCanaryWait(const int s) +{ + if(InpAdaptiveStreakUnit == ADAPTIVE_STREAK_BY_DAY) + { + MqlDateTime t; + TimeToStruct(TimeCurrent(), t); + t.hour = 0; + t.min = 0; + t.sec = 0; + const datetime today0 = StructToTime(t); + g_adCanaryMonthStart[s] = today0 + 86400; + g_adCanaryMonthEnd[s] = g_adCanaryMonthStart[s] + 86400; + g_adCanaryWaiting[s] = true; + g_adCanaryActive[s] = false; + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), + " -> CANARY WAIT until ", TimeToString(g_adCanaryMonthStart[s], TIME_DATE), + " then 1 day at lot x ", DoubleToString(InpAdaptiveCanaryLotMult, 4)); + return; + } + MqlDateTime t; + TimeToStruct(TimeCurrent(), t); + t.mon++; + if(t.mon > 12) + { + t.mon = 1; + t.year++; + } + t.day = 1; + t.hour = 0; + t.min = 0; + t.sec = 0; + g_adCanaryMonthStart[s] = StructToTime(t); + int ey = t.year; + int em = t.mon; + UnitedAdaptive_NextYm(ey, em); + g_adCanaryMonthEnd[s] = UnitedAdaptive_MonthStartInt(ey, em); + g_adCanaryWaiting[s] = true; + g_adCanaryActive[s] = false; + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), + " -> CANARY WAIT until ", TimeToString(g_adCanaryMonthStart[s], TIME_DATE), + " then 1 month at lot x ", DoubleToString(InpAdaptiveCanaryLotMult, 4)); +} + +void UnitedAdaptive_TryExpireHardPauses() +{ + if(InpAdaptiveStreakUnit == ADAPTIVE_STREAK_BY_DAY) + { + if(InpAdaptiveHardRetryDays <= 0) + return; + } + else if(InpAdaptiveHardRetryMonths <= 0) + return; + + const datetime now = TimeCurrent(); + for(int s = 0; s < UNITED_ADAPTIVE_N; s++) + { + if(!g_adHardPaused[s]) + continue; + if(g_adHardPauseUntil[s] > 0 && now >= g_adHardPauseUntil[s]) + { + g_adHardPaused[s] = false; + g_adHardPauseUntil[s] = 0; + if(InpAdaptiveStreakUnit == ADAPTIVE_STREAK_BY_DAY) + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), + " hard pause RETRY (after ", InpAdaptiveHardRetryDays, " d)"); + else + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), + " hard pause RETRY (after ", InpAdaptiveHardRetryMonths, " mo)"); + } + } +} + +void UnitedAdaptive_ProcessCanaryTransitions() +{ + if(!InpAdaptiveEnable) + return; + + UnitedAdaptive_TryExpireHardPauses(); + + const datetime now = TimeCurrent(); + for(int s = 0; s < UNITED_ADAPTIVE_N; s++) + { + if(g_adCanaryWaiting[s] && !g_adCanaryActive[s] && now >= g_adCanaryMonthStart[s]) + { + g_adCanaryWaiting[s] = false; + g_adCanaryActive[s] = true; + if(InpAdaptiveStreakUnit == ADAPTIVE_STREAK_BY_DAY) + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), " CANARY ACTIVE (probation day)"); + else + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), " CANARY ACTIVE (probation month)"); + } + + if(g_adCanaryActive[s] && now >= g_adCanaryMonthEnd[s]) + { + const double pl = UnitedAdaptive_SumStratDealsRange(s, g_adCanaryMonthStart[s], g_adCanaryMonthEnd[s]); + g_adCanaryActive[s] = false; + g_adCanaryWaiting[s] = false; + if(pl > 0.0) + { + if(InpAdaptivePostCanaryCooldownDays > 0) + g_adPostCanaryCooldownUntil[s] = TimeCurrent() + InpAdaptivePostCanaryCooldownDays * 86400; + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), + " canary OK P/L=", DoubleToString(pl, 2), " -> full size"); + } + else + { + g_adHardPaused[s] = true; + if(InpAdaptiveStreakUnit == ADAPTIVE_STREAK_BY_DAY) + { + if(InpAdaptiveHardRetryDays > 0) + g_adHardPauseUntil[s] = now + (datetime)InpAdaptiveHardRetryDays * 86400; + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), + " canary FAIL P/L=", DoubleToString(pl, 2), " -> HARD PAUSE", + (InpAdaptiveHardRetryDays > 0 ? " (auto-retry later)" : "")); + } + else + { + if(InpAdaptiveHardRetryMonths > 0) + g_adHardPauseUntil[s] = UnitedAdaptive_AddMonthsWallClock(now, InpAdaptiveHardRetryMonths); + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), + " canary FAIL P/L=", DoubleToString(pl, 2), " -> HARD PAUSE", + (InpAdaptiveHardRetryMonths > 0 ? " (auto-retry later)" : "")); + } + } + } + } +} + +bool UnitedAdaptive_StratLastMonthIsLosing(const int s) +{ + if(s < 0 || s >= UNITED_ADAPTIVE_N) + return false; + const double thr = MathMax(0.0, InpDdLotCapStratLossThreshold); + return g_adLastClosedMonthPl[s] < -thr; +} + +void UnitedAdaptive_RecomputeStreaks() +{ + const bool needMonthPlCap = InpDdLotCapEnable && InpDdLotCapPerStratEnable; + const bool adaptMonth = InpAdaptiveEnable && InpAdaptiveStreakUnit == ADAPTIVE_STREAK_BY_MONTH; + const bool adaptDay = InpAdaptiveEnable && InpAdaptiveStreakUnit == ADAPTIVE_STREAK_BY_DAY; + + int nMonthOff = 0; + int streakReqM = 1; + if(adaptMonth) + { + streakReqM = MathMax(1, InpAdaptiveRedStreak); + const int L = MathMax(InpAdaptiveLookbackMonths, streakReqM + 1); + nMonthOff = MathMin(L, 63); + } + else if(needMonthPlCap) + nMonthOff = 2; + + int nDayOff = 0; + int streakReqD = 1; + if(adaptDay) + { + streakReqD = MathMax(1, InpAdaptiveRedStreak); + const int L = MathMax(InpAdaptiveLookbackDays, streakReqD + 1); + nDayOff = MathMin(L, UNITED_AD_MAX_DAY_BUCKETS); + } + + if(nMonthOff == 0 && nDayOff == 0) + return; + + const datetime to = TimeCurrent() + 60; + datetime from = to; + if(nMonthOff > 0) + { + int oy = 0, om = 0; + UnitedAdaptive_ClosedMonthYm(nMonthOff - 1, oy, om); + const datetime mf = UnitedAdaptive_MonthStartInt(oy, om); + if(mf < from) + from = mf; + } + if(nDayOff > 0) + { + const datetime df = UnitedAdaptive_ClosedDayStart(nDayOff - 1); + if(df < from) + from = df; + } + + if(from >= to || !HistorySelect(from, to)) + return; + + double monthBuck[UNITED_ADAPTIVE_N][64]; + double dayBuck[UNITED_ADAPTIVE_N][UNITED_AD_MAX_DAY_BUCKETS]; + for(int s = 0; s < UNITED_ADAPTIVE_N; s++) + { + for(int o = 0; o < 64; o++) + monthBuck[s][o] = 0.0; + for(int o = 0; o < UNITED_AD_MAX_DAY_BUCKETS; o++) + dayBuck[s][o] = 0.0; + } + + const int total = HistoryDealsTotal(); + for(int i = 0; i < total; i++) + { + const ulong tk = HistoryDealGetTicket(i); + if(tk == 0) + continue; + const long mg = (long)HistoryDealGetInteger(tk, DEAL_MAGIC); + const datetime dt = (datetime)HistoryDealGetInteger(tk, DEAL_TIME); + const double pl = HistoryDealGetDouble(tk, DEAL_PROFIT) + + HistoryDealGetDouble(tk, DEAL_SWAP) + + HistoryDealGetDouble(tk, DEAL_COMMISSION); + + if(nMonthOff > 0) + { + for(int o = 0; o < nMonthOff; o++) + { + int y = 0, m = 0; + UnitedAdaptive_ClosedMonthYm(o, y, m); + const datetime ms = UnitedAdaptive_MonthStartInt(y, m); + int ny = y, nm = m; + UnitedAdaptive_NextYm(ny, nm); + const datetime me = UnitedAdaptive_MonthStartInt(ny, nm); + if(dt < ms || dt >= me) + continue; + + if(EnableDarvasBox && mg == (long)DB_MagicNumber) + monthBuck[UNITED_AD_DARVAS][o] += pl; + if(EnableEMASlopeDistance && mg == (long)ES_MagicNumber) + monthBuck[UNITED_AD_ES][o] += pl; + if(EnableRSICrossOverReversal && mg == (long)RC_MagicNumber) + monthBuck[UNITED_AD_RC][o] += pl; + if(UnitedAdaptive_RMDealMatches(mg)) + monthBuck[UNITED_AD_RM][o] += pl; + if(EnableRSIScalpingAPPL && mg == (long)RS_APPL_MagicNumber) + monthBuck[UNITED_AD_RS_APPL][o] += pl; + if(EnableRSIScalpingBTCUSD && mg == (long)RS_BTCUSD_MagicNumber) + monthBuck[UNITED_AD_RS_BTC][o] += pl; + if(EnableRSIScalpingNVDA && mg == (long)RS_NVDA_MagicNumber) + monthBuck[UNITED_AD_RS_NVDA][o] += pl; + if(EnableRSIScalpingTSLA && mg == (long)RS_TSLA_MagicNumber) + monthBuck[UNITED_AD_RS_TSLA][o] += pl; + if(EnableRSIScalpingXAUUSD && mg == (long)RS_XAUUSD_MagicNumber) + monthBuck[UNITED_AD_RS_XAU][o] += pl; + if(EnableRSIReversalEURUSD && mg == (long)RRA_EURUSD_MagicNumber) + monthBuck[UNITED_AD_RRA_EUR][o] += pl; + if(EnableRSIReversalAUDUSD && mg == (long)RRA_AUDUSD_MagicNumber) + monthBuck[UNITED_AD_RRA_AUD][o] += pl; + if(EnableRSISecretSauceXAUUSD && mg == (long)RSS_XAUUSD_MagicNumber) + monthBuck[UNITED_AD_RSS][o] += pl; + if(EnableSuperEMA && mg == (long)SE_MagicNumber) + monthBuck[UNITED_AD_SUPEREMA][o] += pl; + break; + } + } + + if(nDayOff > 0) + { + const int dOff = UnitedAdaptive_ClosedDayOffsetFromDealTime(dt); + if(dOff >= 0 && dOff < nDayOff) + { + if(EnableDarvasBox && mg == (long)DB_MagicNumber) + dayBuck[UNITED_AD_DARVAS][dOff] += pl; + if(EnableEMASlopeDistance && mg == (long)ES_MagicNumber) + dayBuck[UNITED_AD_ES][dOff] += pl; + if(EnableRSICrossOverReversal && mg == (long)RC_MagicNumber) + dayBuck[UNITED_AD_RC][dOff] += pl; + if(UnitedAdaptive_RMDealMatches(mg)) + dayBuck[UNITED_AD_RM][dOff] += pl; + if(EnableRSIScalpingAPPL && mg == (long)RS_APPL_MagicNumber) + dayBuck[UNITED_AD_RS_APPL][dOff] += pl; + if(EnableRSIScalpingBTCUSD && mg == (long)RS_BTCUSD_MagicNumber) + dayBuck[UNITED_AD_RS_BTC][dOff] += pl; + if(EnableRSIScalpingNVDA && mg == (long)RS_NVDA_MagicNumber) + dayBuck[UNITED_AD_RS_NVDA][dOff] += pl; + if(EnableRSIScalpingTSLA && mg == (long)RS_TSLA_MagicNumber) + dayBuck[UNITED_AD_RS_TSLA][dOff] += pl; + if(EnableRSIScalpingXAUUSD && mg == (long)RS_XAUUSD_MagicNumber) + dayBuck[UNITED_AD_RS_XAU][dOff] += pl; + if(EnableRSIReversalEURUSD && mg == (long)RRA_EURUSD_MagicNumber) + dayBuck[UNITED_AD_RRA_EUR][dOff] += pl; + if(EnableRSIReversalAUDUSD && mg == (long)RRA_AUDUSD_MagicNumber) + dayBuck[UNITED_AD_RRA_AUD][dOff] += pl; + if(EnableRSISecretSauceXAUUSD && mg == (long)RSS_XAUUSD_MagicNumber) + dayBuck[UNITED_AD_RSS][dOff] += pl; + if(EnableSuperEMA && mg == (long)SE_MagicNumber) + dayBuck[UNITED_AD_SUPEREMA][dOff] += pl; + } + } + } + + if(nMonthOff > 0) + { + for(int s = 0; s < UNITED_ADAPTIVE_N; s++) + g_adLastClosedMonthPl[s] = monthBuck[s][0]; + } + + if(!InpAdaptiveEnable) + return; + + const double thr = MathMax(0.0, InpAdaptiveRedThreshold); + const bool useDay = adaptDay; + const int streakReq = useDay ? streakReqD : streakReqM; + const int nOff = useDay ? nDayOff : nMonthOff; + + for(int s = 0; s < UNITED_ADAPTIVE_N; s++) + { + if(g_adHardPaused[s]) + continue; + if(g_adCanaryActive[s] || g_adCanaryWaiting[s]) + { + int consecOk = 0; + for(int o = 0; o < streakReq && o < nOff; o++) + { + const double bpl = useDay ? dayBuck[s][o] : monthBuck[s][o]; + if(bpl < -thr) + consecOk++; + else + break; + } + const bool streakBad = (consecOk >= streakReq); + if(!streakBad && g_adCanaryWaiting[s] && !g_adCanaryActive[s]) + { + g_adCanaryWaiting[s] = false; + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), " canary wait CANCELLED (streak cleared)"); + } + continue; + } + + int consec = 0; + for(int o = 0; o < streakReq && o < nOff; o++) + { + const double bpl = useDay ? dayBuck[s][o] : monthBuck[s][o]; + if(bpl < -thr) + consec++; + else + break; + } + const bool streakBad = (consec >= streakReq); + if(!streakBad) + continue; + + const bool prevHard = g_adHardPaused[s]; + if(InpAdaptiveCanaryLotMult > 0.0) + { + if(!g_adCanaryWaiting[s] && !g_adCanaryActive[s]) + { + if(g_adPostCanaryCooldownUntil[s] > TimeCurrent()) + continue; + UnitedAdaptive_StartCanaryWait(s); + } + } + else + { + g_adHardPaused[s] = true; + if(!prevHard && useDay && InpAdaptiveHardRetryDays > 0) + g_adHardPauseUntil[s] = TimeCurrent() + (datetime)InpAdaptiveHardRetryDays * 86400; + else if(!prevHard && !useDay && InpAdaptiveHardRetryMonths > 0) + g_adHardPauseUntil[s] = UnitedAdaptive_AddMonthsWallClock(TimeCurrent(), InpAdaptiveHardRetryMonths); + if(!prevHard) + Print("AdaptiveRegime: ", UnitedAdaptive_StratName(s), + " HARD PAUSE (streak, canary disabled)"); + } + } +} + +void UnitedAdaptive_UpdateIfDue() +{ + if(!InpAdaptiveEnable && (!InpDdLotCapEnable || !InpDdLotCapPerStratEnable)) + { + UnitedAdaptive_Init(); + return; + } + + int everySec = 3600; + if(InpAdaptiveEnable) + everySec = MathMin(everySec, MathMax(60, InpAdaptiveUpdateSeconds)); + if(InpDdLotCapEnable && InpDdLotCapPerStratEnable) + everySec = MathMin(everySec, MathMax(60, InpDdLotCapUpdateSeconds)); + + if(g_unitedAdaptiveLastUpdate > 0 && (TimeCurrent() - g_unitedAdaptiveLastUpdate) < everySec) + return; + + g_unitedAdaptiveLastUpdate = TimeCurrent(); + UnitedAdaptive_RecomputeStreaks(); +} + +double UnitedAdaptive_GetLotMult(const int stratId) +{ + if(stratId < 0 || stratId >= UNITED_ADAPTIVE_N) + return 1.0; + if(!InpAdaptiveEnable) + return 1.0; + if(g_adCanaryActive[stratId]) + return MathMax(0.0, InpAdaptiveCanaryLotMult); + return 1.0; +} + +bool UnitedAdaptive_StrategyActive(const int stratId) +{ + if(stratId < 0 || stratId >= UNITED_ADAPTIVE_N) + return true; + if(!InpAdaptiveEnable) + return true; + if(g_adHardPaused[stratId]) + return false; + if(g_adCanaryWaiting[stratId] && !g_adCanaryActive[stratId]) + return false; + return true; +} + +#endif diff --git a/frontline/MQL5/_united_dynamic/Strategies/RSISecretSauceStrategy.mqh b/frontline/MQL5/_united_dynamic/Strategies/RSISecretSauceStrategy.mqh new file mode 100644 index 0000000..73bc500 --- /dev/null +++ b/frontline/MQL5/_united_dynamic/Strategies/RSISecretSauceStrategy.mqh @@ -0,0 +1,438 @@ +//+------------------------------------------------------------------+ +//| RSISecretSauceStrategy.mqh | +//| RSI Secret Sauce: leave 70/30 zone, re-enter, peak/bottom entry | +//+------------------------------------------------------------------+ + +struct RSISecretSauceData +{ + string symbol; + bool isInitialized; + CTrade trade; + CPositionInfo positionInfo; + int rsiHandle; + int atrHandle; + double rsiBuffer[]; + double atrBuffer[]; + double highBuffer[]; + double lowBuffer[]; + bool rsiWasOverbought; + bool rsiWasOversold; + bool rsiBackInRange; + datetime lastRSIExitTime; + datetime lastRSIReentryTime; + datetime lastTradeTime; + datetime lastBarTime; + ENUM_TIMEFRAMES timeframe; + int rsiPeriod; + double rsiOverbought; + double rsiOversold; + int rsiLookback; + int peakBars; + bool requireDivergence; + double stopLossATR; + double takeProfitATR; + int atrPeriod; + bool useSwingStopLoss; + int swingLookback; + int maxPositions; + int minBarsBetweenTrades; + int magicNumber; + int slippage; +}; + +bool RSS_UpdateIndicators(RSISecretSauceData& d); +void RSS_UpdateRSIState(RSISecretSauceData& d); +bool RSS_CanOpenNewPosition(RSISecretSauceData& d); +void RSS_CheckEntrySignals(RSISecretSauceData& d, const double lotSize); +bool RSS_IsRSIPeak(RSISecretSauceData& d); +bool RSS_IsRSIBottom(RSISecretSauceData& d); +void RSS_OpenPosition(RSISecretSauceData& d, ENUM_POSITION_TYPE type, const double lotSize); +bool RSS_CalculateStops(RSISecretSauceData& d, double price, ENUM_POSITION_TYPE type, double& sl, double& tp); +double RSS_GetSwingStopLoss(RSISecretSauceData& d, ENUM_POSITION_TYPE type); + +bool InitRSISecretSauce(RSISecretSauceData& d, + const string symbol, + const ENUM_TIMEFRAMES timeframe, + const int rsiPeriod, + const double rsiOverbought, + const double rsiOversold, + const int rsiLookback, + const int peakBars, + const bool requireDivergence, + const double stopLossATR, + const double takeProfitATR, + const int atrPeriod, + const bool useSwingStopLoss, + const int swingLookback, + const int maxPositions, + const int minBarsBetweenTrades, + const int magicNumber, + const int slippage) +{ + d.symbol = symbol; + if(StringLen(d.symbol) == 0) + d.symbol = _Symbol; + d.isInitialized = false; + d.rsiHandle = INVALID_HANDLE; + d.atrHandle = INVALID_HANDLE; + d.rsiWasOverbought = false; + d.rsiWasOversold = false; + d.rsiBackInRange = false; + d.lastRSIExitTime = 0; + d.lastRSIReentryTime = 0; + d.lastTradeTime = 0; + d.lastBarTime = 0; + + if(!SymbolSelect(d.symbol, true)) + { + Print("RSISecretSauce: Symbol '", d.symbol, "' not available in Market Watch."); + return false; + } + + d.timeframe = timeframe; + d.rsiPeriod = rsiPeriod; + d.rsiOverbought = rsiOverbought; + d.rsiOversold = rsiOversold; + d.rsiLookback = rsiLookback; + d.peakBars = peakBars; + d.requireDivergence = requireDivergence; + d.stopLossATR = stopLossATR; + d.takeProfitATR = takeProfitATR; + d.atrPeriod = atrPeriod; + d.useSwingStopLoss = useSwingStopLoss; + d.swingLookback = swingLookback; + d.maxPositions = maxPositions; + d.minBarsBetweenTrades = minBarsBetweenTrades; + d.magicNumber = magicNumber; + d.slippage = slippage; + + Sleep(100); + int retry = 0; + while(retry < 5 && d.rsiHandle == INVALID_HANDLE) + { + d.rsiHandle = iRSI(d.symbol, d.timeframe, d.rsiPeriod, PRICE_CLOSE); + if(d.rsiHandle == INVALID_HANDLE) + { + if(GetLastError() == 4805 && retry < 4) + { + Sleep(1000); + retry++; + continue; + } + Print("RSISecretSauce: Failed to create RSI for '", d.symbol, "'"); + return false; + } + } + + retry = 0; + while(retry < 5 && d.atrHandle == INVALID_HANDLE) + { + d.atrHandle = iATR(d.symbol, d.timeframe, d.atrPeriod); + if(d.atrHandle == INVALID_HANDLE) + { + if(GetLastError() == 4805 && retry < 4) + { + Sleep(1000); + retry++; + continue; + } + Print("RSISecretSauce: Failed to create ATR for '", d.symbol, "'"); + IndicatorRelease(d.rsiHandle); + d.rsiHandle = INVALID_HANDLE; + return false; + } + } + + ArraySetAsSeries(d.rsiBuffer, true); + ArraySetAsSeries(d.atrBuffer, true); + ArraySetAsSeries(d.highBuffer, true); + ArraySetAsSeries(d.lowBuffer, true); + + d.trade.SetExpertMagicNumber(d.magicNumber); + d.trade.SetDeviationInPoints(d.slippage); + d.trade.SetTypeFilling(ORDER_FILLING_FOK); + + d.isInitialized = true; + Print("RSISecretSauce: Initialized for '", d.symbol, "' TF=", EnumToString(d.timeframe)); + return true; +} + +void DeinitRSISecretSauce(RSISecretSauceData& d) +{ + if(d.rsiHandle != INVALID_HANDLE) + IndicatorRelease(d.rsiHandle); + if(d.atrHandle != INVALID_HANDLE) + IndicatorRelease(d.atrHandle); + d.rsiHandle = INVALID_HANDLE; + d.atrHandle = INVALID_HANDLE; + d.isInitialized = false; +} + +bool RSS_UpdateIndicators(RSISecretSauceData& d) +{ + int rsiBarsNeeded = d.rsiLookback + 5; + if(CopyBuffer(d.rsiHandle, 0, 0, rsiBarsNeeded, d.rsiBuffer) < rsiBarsNeeded) + return false; + if(CopyBuffer(d.atrHandle, 0, 0, 2, d.atrBuffer) < 2) + return false; + if(CopyHigh(d.symbol, d.timeframe, 0, d.swingLookback + 5, d.highBuffer) < d.swingLookback + 5) + return false; + if(CopyLow(d.symbol, d.timeframe, 0, d.swingLookback + 5, d.lowBuffer) < d.swingLookback + 5) + return false; + return true; +} + +void RSS_UpdateRSIState(RSISecretSauceData& d) +{ + double rsiCurrent = d.rsiBuffer[0]; + double rsiPrev = d.rsiBuffer[1]; + + if(rsiPrev >= d.rsiOverbought && rsiCurrent < d.rsiOverbought) + { + d.rsiWasOverbought = true; + d.rsiBackInRange = true; + d.lastRSIExitTime = TimeCurrent(); + d.lastRSIReentryTime = TimeCurrent(); + } + + if(rsiPrev <= d.rsiOversold && rsiCurrent > d.rsiOversold) + { + d.rsiWasOversold = true; + d.rsiBackInRange = true; + d.lastRSIExitTime = TimeCurrent(); + d.lastRSIReentryTime = TimeCurrent(); + } + + if(rsiCurrent >= d.rsiOverbought) + { + d.rsiWasOverbought = false; + d.rsiBackInRange = false; + } + + if(rsiCurrent <= d.rsiOversold) + { + d.rsiWasOversold = false; + d.rsiBackInRange = false; + } +} + +bool RSS_CanOpenNewPosition(RSISecretSauceData& d) +{ + int positionCount = 0; + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + if(d.positionInfo.SelectByIndex(i)) + { + if(d.positionInfo.Symbol() == d.symbol && d.positionInfo.Magic() == d.magicNumber) + positionCount++; + } + } + + if(positionCount >= d.maxPositions) + return false; + + if(d.lastTradeTime > 0) + { + int barsSince = Bars(d.symbol, d.timeframe, d.lastTradeTime, TimeCurrent()); + if(barsSince < d.minBarsBetweenTrades) + return false; + } + + return true; +} + +bool RSS_IsRSIPeak(RSISecretSauceData& d) +{ + if(ArraySize(d.rsiBuffer) < d.peakBars + 2) + return false; + + double currentRSI = d.rsiBuffer[0]; + bool isPeak = true; + + for(int i = 1; i <= d.peakBars; i++) + { + if(d.rsiBuffer[i] >= currentRSI) + { + isPeak = false; + break; + } + } + + if(d.rsiBuffer[1] >= currentRSI) + isPeak = false; + + return isPeak; +} + +bool RSS_IsRSIBottom(RSISecretSauceData& d) +{ + if(ArraySize(d.rsiBuffer) < d.peakBars + 2) + return false; + + double currentRSI = d.rsiBuffer[0]; + bool isBottom = true; + + for(int i = 1; i <= d.peakBars; i++) + { + if(d.rsiBuffer[i] <= currentRSI) + { + isBottom = false; + break; + } + } + + if(d.rsiBuffer[1] <= currentRSI) + isBottom = false; + + return isBottom; +} + +void RSS_CheckEntrySignals(RSISecretSauceData& d, const double lotSize) +{ + if(d.rsiWasOverbought && d.rsiBackInRange) + { + if(d.rsiBuffer[0] < d.rsiOverbought) + { + if(RSS_IsRSIPeak(d)) + RSS_OpenPosition(d, POSITION_TYPE_BUY, lotSize); + } + } + + if(d.rsiWasOversold && d.rsiBackInRange) + { + if(d.rsiBuffer[0] > d.rsiOversold) + { + if(RSS_IsRSIBottom(d)) + RSS_OpenPosition(d, POSITION_TYPE_SELL, lotSize); + } + } +} + +bool RSS_CalculateStops(RSISecretSauceData& d, double price, ENUM_POSITION_TYPE type, double& sl, double& tp) +{ + double atrValue = d.atrBuffer[0]; + if(atrValue <= 0) + atrValue = price * 0.01; + + double slDistance = atrValue * d.stopLossATR; + double tpDistance = atrValue * d.takeProfitATR; + + int digits = (int)SymbolInfoInteger(d.symbol, SYMBOL_DIGITS); + double point = SymbolInfoDouble(d.symbol, SYMBOL_POINT); + int stopsLevel = (int)SymbolInfoInteger(d.symbol, SYMBOL_TRADE_STOPS_LEVEL); + double minStopDistance = MathMax(stopsLevel * point, point * 10); + + if(d.useSwingStopLoss) + { + double swingStop = RSS_GetSwingStopLoss(d, type); + if(swingStop > 0) + { + if(type == POSITION_TYPE_BUY) + { + if(swingStop < price && (price - swingStop) > minStopDistance) + slDistance = price - swingStop; + } + else + { + if(swingStop > price && (swingStop - price) > minStopDistance) + slDistance = swingStop - price; + } + } + } + + if(slDistance < minStopDistance) + slDistance = minStopDistance; + if(tpDistance < minStopDistance) + tpDistance = minStopDistance; + + if(type == POSITION_TYPE_BUY) + { + sl = NormalizeDouble(price - slDistance, digits); + tp = NormalizeDouble(price + tpDistance, digits); + } + else + { + sl = NormalizeDouble(price + slDistance, digits); + tp = NormalizeDouble(price - tpDistance, digits); + } + + return true; +} + +double RSS_GetSwingStopLoss(RSISecretSauceData& d, ENUM_POSITION_TYPE type) +{ + if(type == POSITION_TYPE_BUY) + { + double lowestLow = d.lowBuffer[0]; + for(int i = 1; i < d.swingLookback && i < ArraySize(d.lowBuffer); i++) + { + if(d.lowBuffer[i] < lowestLow) + lowestLow = d.lowBuffer[i]; + } + return lowestLow; + } + + double highestHigh = d.highBuffer[0]; + for(int i = 1; i < d.swingLookback && i < ArraySize(d.highBuffer); i++) + { + if(d.highBuffer[i] > highestHigh) + highestHigh = d.highBuffer[i]; + } + return highestHigh; +} + +void RSS_OpenPosition(RSISecretSauceData& d, ENUM_POSITION_TYPE type, const double lotSize) +{ + double price = (type == POSITION_TYPE_BUY) ? + SymbolInfoDouble(d.symbol, SYMBOL_ASK) : + SymbolInfoDouble(d.symbol, SYMBOL_BID); + + if(price <= 0) + return; + + double sl = 0.0, tp = 0.0; + if(!RSS_CalculateStops(d, price, type, sl, tp)) + return; + + string comment = "RSI_Secret_" + (type == POSITION_TYPE_BUY ? "LONG" : "SHORT"); + + bool result = false; + if(type == POSITION_TYPE_BUY) + result = d.trade.Buy(lotSize, d.symbol, 0, sl, tp, comment); + else + result = d.trade.Sell(lotSize, d.symbol, 0, sl, tp, comment); + + if(result) + { + d.lastTradeTime = TimeCurrent(); + if(type == POSITION_TYPE_BUY) + d.rsiWasOverbought = false; + else + d.rsiWasOversold = false; + d.rsiBackInRange = false; + } +} + +void ProcessRSISecretSauce(RSISecretSauceData& d, const double lotSize) +{ + if(!d.isInitialized) + return; + + int requiredBars = MathMax(d.rsiLookback, d.swingLookback) + 10; + if(Bars(d.symbol, d.timeframe) < requiredBars) + return; + + datetime currentBarTime = iTime(d.symbol, d.timeframe, 0); + if(currentBarTime == d.lastBarTime) + return; + + d.lastBarTime = currentBarTime; + + if(!RSS_UpdateIndicators(d)) + return; + + RSS_UpdateRSIState(d); + + if(RSS_CanOpenNewPosition(d)) + RSS_CheckEntrySignals(d, lotSize); +} diff --git a/frontline/MQL5/_united_dynamic/Strategies/SuperEMAStrategy.mqh b/frontline/MQL5/_united_dynamic/Strategies/SuperEMAStrategy.mqh new file mode 100644 index 0000000..3b1a974 --- /dev/null +++ b/frontline/MQL5/_united_dynamic/Strategies/SuperEMAStrategy.mqh @@ -0,0 +1,478 @@ +//+------------------------------------------------------------------+ +//| SuperEMAStrategy.mqh — EMA + CCI + MACD (United EA module) | +//+------------------------------------------------------------------+ +#ifndef SUPER_EMA_STRATEGY_MQH +#define SUPER_EMA_STRATEGY_MQH + +#include + +enum ENUM_SE_ENTRY_STYLE +{ + SE_ENTRY_CCIZERO_MACD = 0, + SE_ENTRY_LAMBERT = 1, + SE_ENTRY_PULLBACK = 2 +}; + +struct SuperEMAData +{ + string symbol; + ENUM_TIMEFRAMES tf; + datetime lastBarTime; + CTrade trade; + bool isInitialized; + int slippagePoints; + int magic; + int emaFast; + int emaMid; + int emaSlow; + int emaTrendBars; + int cciPeriod; + double cciOverbought; + double cciOversold; + int pullbackCciLookback; + int macdFast; + int macdSlow; + int macdSignal; + ENUM_SE_ENTRY_STYLE entryStyle; + bool oneTradeOnly; + bool useStructuralSL; + double slBufferPoints; + bool exitOnTrendFlip; + bool exitOnMacdFlip; + bool exitOnCciZeroCross; + int maxHoldingBars; + bool exitBelowMidEma; + bool debugLogs; +}; + +void SuperEMA_Log(SuperEMAData &d, const string s) +{ + if(d.debugLogs) + Print("[SuperEMA] ", s); +} + +bool SuperEMA_IsNewBar(SuperEMAData &d) +{ + datetime t = iTime(d.symbol, d.tf, 0); + if(t <= 0 || t == d.lastBarTime) + return false; + d.lastBarTime = t; + return true; +} + +double SuperEMA_EmaAt(SuperEMAData &d, const int period, const int shift) +{ + int h = iMA(d.symbol, d.tf, period, 0, MODE_EMA, PRICE_CLOSE); + if(h == INVALID_HANDLE) + return 0.0; + double b[1]; + if(CopyBuffer(h, 0, shift, 1, b) <= 0) + { + IndicatorRelease(h); + return 0.0; + } + IndicatorRelease(h); + return b[0]; +} + +double SuperEMA_CciAt(SuperEMAData &d, const int shift) +{ + int h = iCCI(d.symbol, d.tf, d.cciPeriod, PRICE_TYPICAL); + if(h == INVALID_HANDLE) + return 0.0; + double b[1]; + if(CopyBuffer(h, 0, shift, 1, b) <= 0) + { + IndicatorRelease(h); + return 0.0; + } + IndicatorRelease(h); + return b[0]; +} + +bool SuperEMA_MacdHistAt(SuperEMAData &d, const int shift, double &hist) +{ + int h = iMACD(d.symbol, d.tf, d.macdFast, d.macdSlow, d.macdSignal, PRICE_CLOSE); + if(h == INVALID_HANDLE) + return false; + double mainLine[1], sigLine[1]; + if(CopyBuffer(h, 0, shift, 1, mainLine) <= 0 || CopyBuffer(h, 1, shift, 1, sigLine) <= 0) + { + IndicatorRelease(h); + return false; + } + IndicatorRelease(h); + hist = mainLine[0] - sigLine[0]; + return true; +} + +bool SuperEMA_TrendUp(SuperEMAData &d, const int sh) +{ + double c = iClose(d.symbol, d.tf, sh); + double emaS = SuperEMA_EmaAt(d, d.emaSlow, sh); + return (emaS > 0.0 && c > emaS); +} + +bool SuperEMA_TrendDown(SuperEMAData &d, const int sh) +{ + double c = iClose(d.symbol, d.tf, sh); + double emaS = SuperEMA_EmaAt(d, d.emaSlow, sh); + return (emaS > 0.0 && c < emaS); +} + +bool SuperEMA_CciCrossAboveZero(SuperEMAData &d) +{ + double c1 = SuperEMA_CciAt(d, 1); + double c2 = SuperEMA_CciAt(d, 2); + return (c2 <= 0.0 && c1 > 0.0); +} + +bool SuperEMA_CciCrossBelowZero(SuperEMAData &d) +{ + double c1 = SuperEMA_CciAt(d, 1); + double c2 = SuperEMA_CciAt(d, 2); + return (c2 >= 0.0 && c1 < 0.0); +} + +bool SuperEMA_CciCrossAbove100(SuperEMAData &d) +{ + double c1 = SuperEMA_CciAt(d, 1); + double c2 = SuperEMA_CciAt(d, 2); + return (c2 < d.cciOverbought && c1 > d.cciOverbought); +} + +bool SuperEMA_CciCrossBelowMinus100(SuperEMAData &d) +{ + double c1 = SuperEMA_CciAt(d, 1); + double c2 = SuperEMA_CciAt(d, 2); + return (c2 > d.cciOversold && c1 < d.cciOversold); +} + +bool SuperEMA_HadCciOversoldRecently(SuperEMAData &d) +{ + for(int i = 2; i <= d.pullbackCciLookback + 1; i++) + { + double v = SuperEMA_CciAt(d, i); + if(v <= d.cciOversold) + return true; + } + return false; +} + +bool SuperEMA_HadCciOverboughtRecently(SuperEMAData &d) +{ + for(int i = 2; i <= d.pullbackCciLookback + 1; i++) + { + double v = SuperEMA_CciAt(d, i); + if(v >= d.cciOverbought) + return true; + } + return false; +} + +bool SuperEMA_PullbackNearFastEmaLong(SuperEMAData &d) +{ + double emaF = SuperEMA_EmaAt(d, d.emaFast, 1); + double lo = iLow(d.symbol, d.tf, 1); + if(emaF <= 0.0) + return false; + return (lo <= emaF + d.slBufferPoints * _Point * 3.0); +} + +bool SuperEMA_PullbackNearFastEmaShort(SuperEMAData &d) +{ + double emaF = SuperEMA_EmaAt(d, d.emaFast, 1); + double hi = iHigh(d.symbol, d.tf, 1); + if(emaF <= 0.0) + return false; + return (hi >= emaF - d.slBufferPoints * _Point * 3.0); +} + +int SuperEMA_PositionsByMagic(SuperEMAData &d) +{ + int n = 0; + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + ulong t = PositionGetTicket(i); + if(t == 0) + continue; + if(PositionGetString(POSITION_SYMBOL) == d.symbol && (int)PositionGetInteger(POSITION_MAGIC) == d.magic) + n++; + } + return n; +} + +void SuperEMA_ComputeSLTP(SuperEMAData &d, const bool isBuy, double &sl, double &tp) +{ + sl = 0.0; + tp = 0.0; + if(!d.useStructuralSL) + return; + double emaM = SuperEMA_EmaAt(d, d.emaMid, d.emaTrendBars); + double buf = d.slBufferPoints * _Point; + if(isBuy) + sl = emaM - buf; + else + sl = emaM + buf; +} + +int SuperEMA_BarsSinceOpen(SuperEMAData &d, const datetime openTime) +{ + if(openTime <= 0) + return 0; + int sh = iBarShift(d.symbol, d.tf, openTime, false); + if(sh < 0) + return 999999; + return sh; +} + +void SuperEMA_CloseTicket(SuperEMAData &d, const ulong ticket, const string reason) +{ + d.trade.SetExpertMagicNumber(d.magic); + if(d.trade.PositionClose(ticket)) + SuperEMA_Log(d, "Close: " + reason); +} + +void SuperEMA_ManageExits(SuperEMAData &d) +{ + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + ulong ticket = PositionGetTicket(i); + if(ticket == 0) + continue; + if(!PositionSelectByTicket(ticket)) + continue; + if(PositionGetString(POSITION_SYMBOL) != d.symbol) + continue; + if((int)PositionGetInteger(POSITION_MAGIC) != d.magic) + continue; + + ENUM_POSITION_TYPE ptype = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); + datetime openTime = (datetime)PositionGetInteger(POSITION_TIME); + + double h1 = 0.0; + if(!SuperEMA_MacdHistAt(d, 1, h1)) + continue; + + bool closeLong = false; + bool closeShort = false; + string reason = ""; + + if(d.maxHoldingBars > 0) + { + int held = SuperEMA_BarsSinceOpen(d, openTime); + if(held >= d.maxHoldingBars) + { + if(ptype == POSITION_TYPE_BUY) + closeLong = true; + else + closeShort = true; + reason = "time stop (max bars)"; + } + } + + if(ptype == POSITION_TYPE_BUY) + { + if(d.exitOnTrendFlip && SuperEMA_TrendDown(d, d.emaTrendBars)) + { + closeLong = true; + reason = "trend flip (below slow EMA)"; + } + if(d.exitOnMacdFlip && h1 < 0.0) + { + closeLong = true; + reason = "MACD histogram < 0"; + } + if(d.exitOnCciZeroCross && SuperEMA_CciCrossBelowZero(d)) + { + closeLong = true; + reason = "CCI crossed below zero"; + } + if(d.exitBelowMidEma) + { + double c = iClose(d.symbol, d.tf, 1); + double emaM = SuperEMA_EmaAt(d, d.emaMid, 1); + if(emaM > 0.0 && c < emaM) + { + closeLong = true; + reason = "close below mid EMA"; + } + } + if(closeLong) + SuperEMA_CloseTicket(d, ticket, reason); + } + else if(ptype == POSITION_TYPE_SELL) + { + if(d.exitOnTrendFlip && SuperEMA_TrendUp(d, d.emaTrendBars)) + { + closeShort = true; + reason = "trend flip (above slow EMA)"; + } + if(d.exitOnMacdFlip && h1 > 0.0) + { + closeShort = true; + reason = "MACD histogram > 0"; + } + if(d.exitOnCciZeroCross && SuperEMA_CciCrossAboveZero(d)) + { + closeShort = true; + reason = "CCI crossed above zero"; + } + if(d.exitBelowMidEma) + { + double c = iClose(d.symbol, d.tf, 1); + double emaM = SuperEMA_EmaAt(d, d.emaMid, 1); + if(emaM > 0.0 && c > emaM) + { + closeShort = true; + reason = "close above mid EMA"; + } + } + if(closeShort) + SuperEMA_CloseTicket(d, ticket, reason); + } + } +} + +bool InitSuperEMA(SuperEMAData &d, + const string symbol, + const ENUM_TIMEFRAMES tf, + const int slippagePoints, + const int magic, + const int emaFast, + const int emaMid, + const int emaSlow, + const int emaTrendBars, + const int cciPeriod, + const double cciOverbought, + const double cciOversold, + const int pullbackCciLookback, + const int macdFast, + const int macdSlow, + const int macdSignal, + const ENUM_SE_ENTRY_STYLE entryStyle, + const bool oneTradeOnly, + const bool useStructuralSL, + const double slBufferPoints, + const bool exitOnTrendFlip, + const bool exitOnMacdFlip, + const bool exitOnCciZeroCross, + const int maxHoldingBars, + const bool exitBelowMidEma, + const bool debugLogs) +{ + d.symbol = symbol; + if(StringLen(d.symbol) == 0) + d.symbol = _Symbol; + d.tf = tf; + d.lastBarTime = 0; + d.isInitialized = false; + d.slippagePoints = slippagePoints; + d.magic = magic; + d.emaFast = emaFast; + d.emaMid = emaMid; + d.emaSlow = emaSlow; + d.emaTrendBars = emaTrendBars; + d.cciPeriod = cciPeriod; + d.cciOverbought = cciOverbought; + d.cciOversold = cciOversold; + d.pullbackCciLookback = pullbackCciLookback; + d.macdFast = macdFast; + d.macdSlow = macdSlow; + d.macdSignal = macdSignal; + d.entryStyle = entryStyle; + d.oneTradeOnly = oneTradeOnly; + d.useStructuralSL = useStructuralSL; + d.slBufferPoints = slBufferPoints; + d.exitOnTrendFlip = exitOnTrendFlip; + d.exitOnMacdFlip = exitOnMacdFlip; + d.exitOnCciZeroCross = exitOnCciZeroCross; + d.maxHoldingBars = maxHoldingBars; + d.exitBelowMidEma = exitBelowMidEma; + d.debugLogs = debugLogs; + + if(!SymbolSelect(d.symbol, true)) + { + Print("SuperEMA: symbol not available: ", d.symbol); + return false; + } + d.trade.SetExpertMagicNumber(d.magic); + d.trade.SetDeviationInPoints(d.slippagePoints); + d.isInitialized = true; + return true; +} + +void ProcessSuperEMA(SuperEMAData &d, const double lots) +{ + if(!d.isInitialized) + return; + + if(!SuperEMA_IsNewBar(d)) + return; + + SuperEMA_ManageExits(d); + + if(d.oneTradeOnly && SuperEMA_PositionsByMagic(d) > 0) + return; + + const int sh = d.emaTrendBars; + double h1 = 0.0, h2 = 0.0; + if(!SuperEMA_MacdHistAt(d, 1, h1) || !SuperEMA_MacdHistAt(d, 2, h2)) + return; + + bool up = SuperEMA_TrendUp(d, sh); + bool dn = SuperEMA_TrendDown(d, sh); + + bool wantBuy = false; + bool wantSell = false; + + switch(d.entryStyle) + { + case SE_ENTRY_CCIZERO_MACD: + if(up && SuperEMA_CciCrossAboveZero(d) && h1 > 0.0) + wantBuy = true; + if(dn && SuperEMA_CciCrossBelowZero(d) && h1 < 0.0) + wantSell = true; + break; + + case SE_ENTRY_LAMBERT: + if(up && SuperEMA_CciCrossAbove100(d) && h1 > 0.0) + wantBuy = true; + if(dn && SuperEMA_CciCrossBelowMinus100(d) && h1 < 0.0) + wantSell = true; + break; + + case SE_ENTRY_PULLBACK: + if(up && SuperEMA_HadCciOversoldRecently(d) && SuperEMA_CciCrossAboveZero(d) && h1 > 0.0 && SuperEMA_PullbackNearFastEmaLong(d)) + wantBuy = true; + if(dn && SuperEMA_HadCciOverboughtRecently(d) && SuperEMA_CciCrossBelowZero(d) && h1 < 0.0 && SuperEMA_PullbackNearFastEmaShort(d)) + wantSell = true; + break; + } + + MqlTick tick; + if(!SymbolInfoTick(d.symbol, tick)) + return; + + double sl = 0.0, tp = 0.0; + + if(wantBuy && !wantSell) + { + SuperEMA_ComputeSLTP(d, true, sl, tp); + if(d.trade.Buy(lots, d.symbol, tick.ask, sl, tp, "United SuperEMA long")) + SuperEMA_Log(d, StringFormat("BUY ask=%.5f sl=%.5f", tick.ask, sl)); + } + else if(wantSell && !wantBuy) + { + SuperEMA_ComputeSLTP(d, false, sl, tp); + if(d.trade.Sell(lots, d.symbol, tick.bid, sl, tp, "United SuperEMA short")) + SuperEMA_Log(d, StringFormat("SELL bid=%.5f sl=%.5f", tick.bid, sl)); + } +} + +void DeinitSuperEMA(SuperEMAData &d) +{ + d.isInitialized = false; +} + +#endif // SUPER_EMA_STRATEGY_MQH diff --git a/frontline/MQL5/_united_dynamic/UnitedProfitPanel.mqh b/frontline/MQL5/_united_dynamic/UnitedProfitPanel.mqh new file mode 100644 index 0000000..ae8eb2e --- /dev/null +++ b/frontline/MQL5/_united_dynamic/UnitedProfitPanel.mqh @@ -0,0 +1,437 @@ +//+------------------------------------------------------------------+ +//| UnitedProfitPanel.mqh — chart object P&L by strategy / magic | +//| One OBJ_LABEL per line (MT5 often ignores \n in a single label). | +//| Include only after all United EA `input` declarations. | +//+------------------------------------------------------------------+ +#ifndef UNITED_PROFIT_PANEL_MQH +#define UNITED_PROFIT_PANEL_MQH + +#define UNITED_PNL_MAX_LINES 48 + +struct UnitedPnLRow +{ + string name; + long magic; +}; + +UnitedPnLRow g_unitedPnLRows[]; +int g_unitedPnLRowCount = 0; +int g_unitedPnL_visibleLineCount = 0; + +string UnitedPnL_Obj(const string suffix) { return "UnitedPnL_" + suffix; } + +long UnitedPnL_ChartId() { return ChartID(); } + +string UnitedPnL_LineObjName(const int idx) { return UnitedPnL_Obj("L") + IntegerToString(idx); } + +datetime UnitedPnL_StartOfYear(const datetime now) +{ + MqlDateTime dt; + TimeToStruct(now, dt); + dt.mon = 1; + dt.day = 1; + dt.hour = 0; + dt.min = 0; + dt.sec = 0; + return StructToTime(dt); +} + +datetime UnitedPnL_StartOfMonth(const datetime now) +{ + MqlDateTime dt; + TimeToStruct(now, dt); + dt.day = 1; + dt.hour = 0; + dt.min = 0; + dt.sec = 0; + return StructToTime(dt); +} + +int UnitedPnL_FindRowIndex(const long magic) +{ + for(int r = 0; r < g_unitedPnLRowCount; r++) + { + if(g_unitedPnLRows[r].magic == magic) + return r; + } + return -1; +} + +bool UnitedPnL_ScanDealsOnce(double &yearPl[], double &monthPl[], const datetime y0, const datetime m0, const datetime now) +{ + const int R = g_unitedPnLRowCount; + ArrayResize(yearPl, R); + ArrayResize(monthPl, R); + for(int j = 0; j < R; j++) + { + yearPl[j] = 0.0; + monthPl[j] = 0.0; + } + + if(R <= 0 || y0 >= now) + return true; + + datetime to = now; + if(to <= y0) + to = y0 + 1; + + if(!HistorySelect(y0, to)) + return false; + + const int n = HistoryDealsTotal(); + for(int i = 0; i < n; i++) + { + const ulong dealTicket = HistoryDealGetTicket(i); + if(dealTicket == 0) + continue; + + const long mg = (long)HistoryDealGetInteger(dealTicket, DEAL_MAGIC); + const int idx = UnitedPnL_FindRowIndex(mg); + if(idx < 0) + continue; + + const datetime dt = (datetime)HistoryDealGetInteger(dealTicket, DEAL_TIME); + const double p = HistoryDealGetDouble(dealTicket, DEAL_PROFIT) + + HistoryDealGetDouble(dealTicket, DEAL_SWAP) + + HistoryDealGetDouble(dealTicket, DEAL_COMMISSION); + + yearPl[idx] += p; + if(dt >= m0) + monthPl[idx] += p; + } + return true; +} + +double UnitedPnL_SumFloatingForMagic(const long magic) +{ + double sum = 0.0; + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + const ulong ticket = PositionGetTicket(i); + if(ticket == 0) + continue; + if(!PositionSelectByTicket(ticket)) + continue; + if((long)PositionGetInteger(POSITION_MAGIC) != magic) + continue; + sum += PositionGetDouble(POSITION_PROFIT); + sum += PositionGetDouble(POSITION_SWAP); + } + return sum; +} + +void UnitedPnL_CollectRows() +{ + g_unitedPnLRowCount = 0; + ArrayResize(g_unitedPnLRows, 24); + + if(EnableDarvasBox) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "DarvasBox"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)DB_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableEMASlopeDistance) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "EMASlope"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)ES_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableRSICrossOverReversal) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RSICrossOver"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RC_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableRSIMidPointHijack) + { + if(RM_InpEnableRSIFollow) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RM_RSIFollow"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RM_InpMagicNumberRSIFollow; + g_unitedPnLRowCount++; + } + if(RM_InpEnableRSIReverse) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RM_RSIRev"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RM_InpMagicNumberRSIReverse; + g_unitedPnLRowCount++; + } + if(RM_InpEnableEMACross) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RM_EMACross"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RM_InpMagicNumberEMACross; + g_unitedPnLRowCount++; + } + } + if(EnableRSIScalpingAPPL) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RS_Scalp_AAPL"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RS_APPL_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableRSIScalpingBTCUSD) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RS_Scalp_BTC"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RS_BTCUSD_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableRSIScalpingNVDA) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RS_Scalp_NVDA"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RS_NVDA_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableRSIScalpingTSLA) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RS_Scalp_TSLA"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RS_TSLA_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableRSIScalpingXAUUSD) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RS_Scalp_XAU"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RS_XAUUSD_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableRSIReversalEURUSD) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RRA_EURUSD"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RRA_EURUSD_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableRSIReversalAUDUSD) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "RRA_AUDUSD"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RRA_AUDUSD_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableRSISecretSauceXAUUSD) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "SecretSauce"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)RSS_XAUUSD_MagicNumber; + g_unitedPnLRowCount++; + } + if(EnableSuperEMA) + { + g_unitedPnLRows[g_unitedPnLRowCount].name = "SuperEMA"; + g_unitedPnLRows[g_unitedPnLRowCount].magic = (long)SE_MagicNumber; + g_unitedPnLRowCount++; + } + + ArrayResize(g_unitedPnLRows, MathMax(g_unitedPnLRowCount, 1)); +} + +void UnitedPnL_EnsureObjects() +{ + const long ch = UnitedPnL_ChartId(); + const string bg = UnitedPnL_Obj("BG"); + if(ObjectFind(ch, bg) < 0) + { + if(!ObjectCreate(ch, bg, OBJ_RECTANGLE_LABEL, 0, 0, 0)) + { + Print("UnitedPnL: BG ObjectCreate failed, err=", GetLastError()); + return; + } + ObjectSetInteger(ch, bg, OBJPROP_BORDER_TYPE, BORDER_FLAT); + ObjectSetInteger(ch, bg, OBJPROP_COLOR, C'90,90,90'); + ObjectSetInteger(ch, bg, OBJPROP_BGCOLOR, C'25,25,30'); + ObjectSetInteger(ch, bg, OBJPROP_WIDTH, 1); + ObjectSetInteger(ch, bg, OBJPROP_BACK, false); + ObjectSetInteger(ch, bg, OBJPROP_SELECTABLE, false); + ObjectSetInteger(ch, bg, OBJPROP_HIDDEN, false); + ObjectSetInteger(ch, bg, OBJPROP_ZORDER, 0); + } + + for(int i = 0; i < UNITED_PNL_MAX_LINES; i++) + { + const string nm = UnitedPnL_LineObjName(i); + if(ObjectFind(ch, nm) >= 0) + continue; + if(!ObjectCreate(ch, nm, OBJ_LABEL, 0, 0, 0)) + { + Print("UnitedPnL: line ", i, " ObjectCreate failed, err=", GetLastError()); + continue; + } + ObjectSetString(ch, nm, OBJPROP_FONT, "Arial"); + ObjectSetInteger(ch, nm, OBJPROP_FONTSIZE, UnitedPanel_FontSize); + ObjectSetInteger(ch, nm, OBJPROP_BACK, false); + ObjectSetInteger(ch, nm, OBJPROP_SELECTABLE, false); + ObjectSetInteger(ch, nm, OBJPROP_HIDDEN, false); + ObjectSetInteger(ch, nm, OBJPROP_ZORDER, 2); + } +} + +void UnitedPnL_ApplyGeometry() +{ + if(!UnitedPanel_Enable) + return; + const long ch = UnitedPnL_ChartId(); + const string bg = UnitedPnL_Obj("BG"); + if(ObjectFind(ch, bg) < 0) + return; + + const int lineH = UnitedPanel_FontSize + 5; + const int vis = MathMax(g_unitedPnL_visibleLineCount, 6); + const int h = UnitedPanel_YMargin * 2 + lineH * vis; + + const ENUM_BASE_CORNER corner = (ENUM_BASE_CORNER)UnitedPanel_Corner; + ObjectSetInteger(ch, bg, OBJPROP_CORNER, corner); + ObjectSetInteger(ch, bg, OBJPROP_XDISTANCE, UnitedPanel_X); + ObjectSetInteger(ch, bg, OBJPROP_YDISTANCE, UnitedPanel_Y); + ObjectSetInteger(ch, bg, OBJPROP_XSIZE, UnitedPanel_Width); + ObjectSetInteger(ch, bg, OBJPROP_YSIZE, MathMax(h, 80)); + + const int baseX = UnitedPanel_X + UnitedPanel_XMargin; + const int baseY = UnitedPanel_Y + UnitedPanel_YMargin; + for(int i = 0; i < UNITED_PNL_MAX_LINES; i++) + { + const string nm = UnitedPnL_LineObjName(i); + if(ObjectFind(ch, nm) < 0) + continue; + ObjectSetInteger(ch, nm, OBJPROP_CORNER, corner); + ObjectSetInteger(ch, nm, OBJPROP_XDISTANCE, baseX); + ObjectSetInteger(ch, nm, OBJPROP_YDISTANCE, baseY + i * lineH); + ObjectSetInteger(ch, nm, OBJPROP_FONTSIZE, UnitedPanel_FontSize); + } +} + +void UnitedPnL_RefreshText() +{ + const long ch = UnitedPnL_ChartId(); + const string bg = UnitedPnL_Obj("BG"); + if(ObjectFind(ch, bg) < 0) + return; + + UnitedPnL_CollectRows(); + + const datetime now = TimeCurrent(); + const datetime y0 = UnitedPnL_StartOfYear(now); + const datetime m0 = UnitedPnL_StartOfMonth(now); + const string cur = AccountInfoString(ACCOUNT_CURRENCY); + + double yearPl[]; + double monthPl[]; + const bool histOk = UnitedPnL_ScanDealsOnce(yearPl, monthPl, y0, m0, now); + const string histNote = histOk ? "" : " [hist fail: Toolbox>History]"; + + double sumY = 0.0, sumM = 0.0, sumF = 0.0; + + string lines[]; + int n = 0; + ArrayResize(lines, UNITED_PNL_MAX_LINES); + + lines[n++] = "United EA " + cur + histNote; + lines[n++] = UnitedPanel_ShowFloating + ? "Y/M = closed deals | F = open P/L+swap" + : "Y/M = closed deal P/L+swap+comm"; + lines[n++] = "----------------------------------"; + + for(int r = 0; r < g_unitedPnLRowCount; r++) + { + const long mg = g_unitedPnLRows[r].magic; + double yv = 0.0, mv = 0.0; + if(histOk && r < ArraySize(yearPl)) + yv = yearPl[r]; + if(histOk && r < ArraySize(monthPl)) + mv = monthPl[r]; + const double fv = UnitedPanel_ShowFloating ? UnitedPnL_SumFloatingForMagic(mg) : 0.0; + sumY += yv; + sumM += mv; + sumF += fv; + } + + string tot = "TOTAL Y:" + DoubleToString(sumY, 2) + " M:" + DoubleToString(sumM, 2); + if(UnitedPanel_ShowFloating) + tot += " F:" + DoubleToString(sumF, 2); + lines[n++] = tot; + lines[n++] = "----------------------------------"; + + if(g_unitedPnLRowCount == 0) + lines[n++] = "(no strategies enabled)"; + else + { + for(int r = 0; r < g_unitedPnLRowCount; r++) + { + if(n >= UNITED_PNL_MAX_LINES - 1) + break; + const long mg = g_unitedPnLRows[r].magic; + double yv = 0.0, mv = 0.0; + if(histOk && r < ArraySize(yearPl)) + yv = yearPl[r]; + if(histOk && r < ArraySize(monthPl)) + mv = monthPl[r]; + const double fv = UnitedPanel_ShowFloating ? UnitedPnL_SumFloatingForMagic(mg) : 0.0; + + lines[n++] = g_unitedPnLRows[r].name + " [" + IntegerToString((int)mg) + "]"; + string row2 = " Y:" + DoubleToString(yv, 2) + " M:" + DoubleToString(mv, 2); + if(UnitedPanel_ShowFloating) + row2 += " F:" + DoubleToString(fv, 2); + lines[n++] = row2; + } + } + + g_unitedPnL_visibleLineCount = n; + + color c = clrSilver; + if(sumM > 0.0001) + c = clrPaleGreen; + else if(sumM < -0.0001) + c = clrTomato; + + for(int i = 0; i < UNITED_PNL_MAX_LINES; i++) + { + const string nm = UnitedPnL_LineObjName(i); + if(ObjectFind(ch, nm) < 0) + continue; + if(i < n) + { + ObjectSetString(ch, nm, OBJPROP_TEXT, lines[i]); + ObjectSetInteger(ch, nm, OBJPROP_COLOR, c); + } + else + { + ObjectSetString(ch, nm, OBJPROP_TEXT, ""); + } + } + + UnitedPnL_ApplyGeometry(); + ChartRedraw(ch); +} + +void UnitedProfitPanelInit() +{ + if(!UnitedPanel_Enable) + return; + UnitedPnL_EnsureObjects(); + UnitedPnL_CollectRows(); + g_unitedPnL_visibleLineCount = 6; + UnitedPnL_ApplyGeometry(); + UnitedPnL_RefreshText(); +} + +void UnitedProfitPanelDeinit() +{ + ObjectsDeleteAll(UnitedPnL_ChartId(), "UnitedPnL_"); +} + +void UnitedProfitPanelRefresh() +{ + if(!UnitedPanel_Enable) + return; + UnitedPnL_RefreshText(); +} + +void UnitedProfitPanelOnChartEvent(const int id) +{ + if(!UnitedPanel_Enable) + return; + if(id == CHARTEVENT_CHART_CHANGE) + { + UnitedPnL_CollectRows(); + UnitedPnL_ApplyGeometry(); + ChartRedraw(UnitedPnL_ChartId()); + } +} + +#endif diff --git a/frontline/MQL5/_united_dynamic/main.mq5 b/frontline/MQL5/_united_dynamic/main.mq5 index 90ad2e8..ec22fc9 100644 --- a/frontline/MQL5/_united_dynamic/main.mq5 +++ b/frontline/MQL5/_united_dynamic/main.mq5 @@ -5,7 +5,7 @@ //+------------------------------------------------------------------+ #property copyright "Copyright 2025, MetaQuotes Ltd." #property link "https://www.mql5.com" -#property version "1.07" +#property version "1.17" #property strict #include @@ -20,6 +20,8 @@ double g_RC_LotSize; double g_RM_LotSize; double g_DB_LotSize; double g_DynMultLast = 1.0; +double g_equityPeakHighWater = 0.0; // for drawdown lot cap (updated each tick via Refresh) +datetime g_ddLotCapAnchorTime = 0; // tester/attach start — grace period before DD cap may apply // Include strategy implementations early so structs are available #include "Strategies/DarvasBoxStrategy.mqh" @@ -28,6 +30,8 @@ double g_DynMultLast = 1.0; #include "Strategies/RSIMidPointHijackStrategy.mqh" #include "Strategies/RSIScalpingStrategy.mqh" #include "Strategies/RSIReversalAsianStrategy.mqh" +#include "Strategies/RSISecretSauceStrategy.mqh" +#include "Strategies/SuperEMAStrategy.mqh" //+------------------------------------------------------------------+ //| Strategy Enable/Disable Switches | @@ -42,8 +46,41 @@ input bool EnableRSIScalpingBTCUSD = true; input bool EnableRSIScalpingNVDA = true; input bool EnableRSIScalpingTSLA = true; input bool EnableRSIScalpingXAUUSD = true; -input bool EnableRSIReversalAsianEURUSD = true; -input bool EnableRSIReversalAsianAUDUSD = true; +input bool EnableRSIReversalEURUSD = true; // RSI Reversal Asian session (EURUSD) +input bool EnableRSIReversalAUDUSD = true; // RSI Reversal Asian session (AUDUSD) +input bool EnableRSISecretSauceXAUUSD = true; +input bool EnableSuperEMA = true; + +//+------------------------------------------------------------------+ +//| SuperEMA — EMA + CCI + MACD (XAUUSD default) | +//+------------------------------------------------------------------+ +input group "=== SuperEMA (EMA + CCI + MACD) ===" +input string SE_Symbol = "XAUUSD"; +input ENUM_TIMEFRAMES SE_Timeframe = PERIOD_M15; +input double SE_LotSize = 0.01; +input int SE_SlippagePoints = 55; +input int SE_MagicNumber = 940001; +input int SE_EmaFast = 40; +input int SE_EmaMid = 180; +input int SE_EmaSlow = 125; +input int SE_EmaTrendBars = 3; +input int SE_CciPeriod = 17; +input double SE_CciOverbought = 80.0; +input double SE_CciOversold = -140.0; +input int SE_PullbackCciLookback = 20; +input int SE_MacdFast = 14; +input int SE_MacdSlow = 38; +input int SE_MacdSignal = 9; +input ENUM_SE_ENTRY_STYLE SE_EntryStyle = SE_ENTRY_LAMBERT; +input bool SE_OneTradeOnly = true; +input bool SE_UseStructuralSL = false; +input double SE_SlBufferPoints = 110; +input bool SE_ExitOnTrendFlip = false; +input bool SE_ExitOnMacdFlip = false; +input bool SE_ExitOnCciZeroCross = true; +input int SE_MaxHoldingBars = 168; +input bool SE_ExitBelowMidEma = false; +input bool SE_DebugLogs = false; //+------------------------------------------------------------------+ //| Dynamic lot sizing — scale base lots vs reference deposit | @@ -58,6 +95,21 @@ input double InpDynamicMaxMult = 0.0; // <=0 动态倍数不封 input bool InpDynamicUseEquity = true; // true=ACCOUNT_EQUITY, false=ACCOUNT_BALANCE input double InpDynamicStockLotCap = 0.0; // Extra cap for stock CFDs (0 = none) +//+------------------------------------------------------------------+ +//| Lot cap: optional account-wide DD from peak, and/or per-strategy | +//| (last *closed* calendar month losing for that magic). | +//+------------------------------------------------------------------+ +input group "=== Drawdown / loser lot cap ===" +input bool InpDdLotCapEnable = true; // master: allow clamping when a mode below triggers +input bool InpDdLotCapGlobalEquityEnable = false; // cap *all* robots when equity DD from peak >= X% (after grace) +input bool InpDdLotCapPerStratEnable = true; // cap only robots whose last closed month was red (by magic) +input bool InpDdLotCapUseEquity = true; // true=ACCOUNT_EQUITY, false=BALANCE (global mode + peak tracking) +input double InpDdLotCapFromPeakPercent = 7.0; // global: trigger if (peak-equity)/peak*100 >= this +input double InpDdLotCapMaxLots = 0.01; // max volume per order while that mode is triggered +input int InpDdLotCapGraceDays = 90; // global only: wait N days from attach before DD cap can apply (0=immediate) +input double InpDdLotCapStratLossThreshold = 0.0; // per-strat: month P/L < -this counts as losing (0 = any loss) +input int InpDdLotCapUpdateSeconds = 3600; // min 60; refresh last-month P/L when adaptive monthly is off + //+------------------------------------------------------------------+ //| Strategy 1: DarvasBoxXAUUSD | //+------------------------------------------------------------------+ @@ -267,12 +319,34 @@ input int RS_XAUUSD_MagicNumber = 129102315; input int RS_XAUUSD_Slippage = 3; //+------------------------------------------------------------------+ -//| Strategy 11-12: RSI Reversal Asian Strategies | -//| Each RSI Reversal Asian strategy trades on its own symbol: | -//| - EURUSD: Euro/USD | -//| - AUDUSD: Australian Dollar/USD | +//| Strategy: RSI Secret Sauce XAUUSD (leave zone → re-entry peak/bottom) | +//| Defaults match secret_sauce.set except symbol stays XAUUSD here. | //+------------------------------------------------------------------+ -input group "=== RSI Reversal Asian EURUSD ===" +input group "=== RSI Secret Sauce XAUUSD ===" +input string RSS_XAUUSD_Symbol = "XAUUSD"; // not BTCUSD — gold chart / portfolio default +input double RSS_XAUUSD_LotSize = 0.1; +input int RSS_XAUUSD_MagicNumber = 789012; +input int RSS_XAUUSD_Slippage = 10; +input ENUM_TIMEFRAMES RSS_XAUUSD_Timeframe = PERIOD_M30; +input int RSS_XAUUSD_RSIPeriod = 16; +input double RSS_XAUUSD_RSIOverbought = 72.5; +input double RSS_XAUUSD_RSIOversold = 32.5; +input int RSS_XAUUSD_RSILookback = 60; +input int RSS_XAUUSD_PeakBars = 2; +input bool RSS_XAUUSD_RequireDivergence = false; +input double RSS_XAUUSD_StopLossATR = 2.75; +input double RSS_XAUUSD_TakeProfitATR = 5.0; +input int RSS_XAUUSD_ATRPeriod = 14; +input bool RSS_XAUUSD_UseSwingStopLoss = false; +input int RSS_XAUUSD_SwingLookback = 30; +input int RSS_XAUUSD_MaxPositions = 1; +input int RSS_XAUUSD_MinBarsBetweenTrades = 7; + +//+------------------------------------------------------------------+ +//| Strategy 11-12: RSI Reversal (Asian session) EURUSD & AUDUSD | +//| Same logic as RSIReversalAsianEURUSD / RSIReversalAsianAUDUSD EAs | +//+------------------------------------------------------------------+ +input group "=== RSI Reversal EURUSD (Asian session) ===" input string RRA_EURUSD_Symbol = "EURUSD"; input int RRA_EURUSD_RSIPeriod = 28; input double RRA_EURUSD_OverboughtLevel = 60; @@ -291,7 +365,7 @@ input ENUM_TIMEFRAMES RRA_EURUSD_TimeFrame = PERIOD_M15; input int RRA_EURUSD_MagicNumber = 30001; input int RRA_EURUSD_Slippage = 3; -input group "=== RSI Reversal Asian AUDUSD ===" +input group "=== RSI Reversal AUDUSD (Asian session) ===" input string RRA_AUDUSD_Symbol = "AUDUSD"; input int RRA_AUDUSD_RSIPeriod = 28; input double RRA_AUDUSD_OverboughtLevel = 68; @@ -310,6 +384,46 @@ input ENUM_TIMEFRAMES RRA_AUDUSD_TimeFrame = PERIOD_M15; input int RRA_AUDUSD_MagicNumber = 30002; input int RRA_AUDUSD_Slippage = 3; +//+------------------------------------------------------------------+ +//| Chart panel: closed-deal P&L by strategy (magic) + optional open | +//+------------------------------------------------------------------+ +input group "=== Chart profit panel (by magic) ===" +input bool UnitedPanel_Enable = false; // OBJ_LABEL + background on chart +input int UnitedPanel_Seconds = 60; // refresh interval (min 5); history scan once per tick +input int UnitedPanel_Corner = 0; // ENUM_BASE_CORNER e.g. 0=left upper +input int UnitedPanel_X = 8; +input int UnitedPanel_Y = 24; +input int UnitedPanel_Width = 360; +input int UnitedPanel_FontSize = 9; +input int UnitedPanel_XMargin = 6; +input int UnitedPanel_YMargin = 6; +input bool UnitedPanel_ShowFloating = false; // open P/L+swap per magic + +enum ENUM_ADAPTIVE_STREAK_UNIT +{ + ADAPTIVE_STREAK_BY_MONTH = 0, // consecutive closed calendar months + ADAPTIVE_STREAK_BY_DAY = 1 // consecutive closed calendar days (server time) +}; + +//+------------------------------------------------------------------+ +//| Pause strategies after consecutive losing periods (month or day)| +//+------------------------------------------------------------------+ +input group "=== Adaptive regime (per robot / magic) ===" +input bool InpAdaptiveEnable = true; // If false, every other InpAdaptive* input is ignored (no streak / canary / pause). Set true to optimize or use adaptive regime. +input ENUM_ADAPTIVE_STREAK_UNIT InpAdaptiveStreakUnit = ADAPTIVE_STREAK_BY_DAY; +input int InpAdaptiveRedStreak = 5; // consecutive red months OR red days (see streak unit) +input double InpAdaptiveRedThreshold = 0.0; // period P/L < -threshold counts red (0 = any loss) +input int InpAdaptiveLookbackMonths = 14; // if unit=MONTH: history depth in months (>= streak+1) +input int InpAdaptiveLookbackDays = 36; // if unit=DAY: closed days of history (>= streak+1) +input int InpAdaptiveUpdateSeconds = 3600; // min 60; how often to recompute +input double InpAdaptiveCanaryLotMult = 0.07; // probation: scale lots (0 = hard pause on streak, no canary) +input int InpAdaptiveHardRetryMonths = 3; // if unit=MONTH: 0=no auto retry; else retry after N months +input int InpAdaptiveHardRetryDays = 32; // if unit=DAY: 0=no auto retry; else retry after N days +input int InpAdaptivePostCanaryCooldownDays = 37; // after successful canary, block re-arming another canary (days) + +#include "UnitedProfitPanel.mqh" +#include "AdaptiveMonthlyRegime.mqh" + //+------------------------------------------------------------------+ //| Global Variables - DarvasBox | //+------------------------------------------------------------------+ @@ -412,6 +526,8 @@ RSIScalpingData rsXAUUSDData; //+------------------------------------------------------------------+ RSIReversalAsianData rraEURUSDData; RSIReversalAsianData rraAUDUSDData; +RSISecretSauceData rsSecretSauceXAUUSDData; +SuperEMAData seData; //+------------------------------------------------------------------+ //| Dynamic lot helpers | @@ -444,6 +560,53 @@ double NormalizeVolumeForSymbol(const string symbol, double lots) return lots; } +void UpdateEquityPeakForDdCap() +{ + if(!InpDdLotCapEnable || !InpDdLotCapGlobalEquityEnable) + return; + const double cur = InpDdLotCapUseEquity ? AccountInfoDouble(ACCOUNT_EQUITY) : AccountInfoDouble(ACCOUNT_BALANCE); + if(cur > g_equityPeakHighWater) + g_equityPeakHighWater = cur; +} + +// After dynamic sizing: global equity DD and/or per-strategy last-month loser -> clamp to InpDdLotCapMaxLots. +double LotsAfterDrawdownCap(const string symbol, const double lotsRaw, const int ddStratId = -1) +{ + double lots = NormalizeVolumeForSymbol(symbol, lotsRaw); + if(!InpDdLotCapEnable) + return lots; + + bool needCap = false; + + if(InpDdLotCapGlobalEquityEnable) + { + bool globalCheck = true; + if(InpDdLotCapGraceDays > 0 && g_ddLotCapAnchorTime > 0) + { + const long needSec = (long)InpDdLotCapGraceDays * 86400L; + if((long)(TimeCurrent() - g_ddLotCapAnchorTime) < needSec) + globalCheck = false; + } + if(globalCheck && g_equityPeakHighWater > 0.0) + { + const double cur = InpDdLotCapUseEquity ? AccountInfoDouble(ACCOUNT_EQUITY) : AccountInfoDouble(ACCOUNT_BALANCE); + if(cur < g_equityPeakHighWater) + { + const double ddPct = 100.0 * (g_equityPeakHighWater - cur) / g_equityPeakHighWater; + if(ddPct >= InpDdLotCapFromPeakPercent) + needCap = true; + } + } + } + + if(InpDdLotCapPerStratEnable && ddStratId >= 0 && UnitedAdaptive_StratLastMonthIsLosing(ddStratId)) + needCap = true; + + if(!needCap) + return lots; + return NormalizeVolumeForSymbol(symbol, MathMin(lots, InpDdLotCapMaxLots)); +} + double GetDynamicMultiplier() { if(!InpDynamicLotEnable) @@ -460,31 +623,33 @@ double GetDynamicMultiplier() } // baseLot = size at reference deposit; optionalCap 0 = no extra ceiling (broker min/max still apply) -double DynamicLotForSymbol(const string symbol, const double baseLot, const double optionalCap = 0.0) +double DynamicLotForSymbol(const string symbol, const double baseLot, const double optionalCap = 0.0, const int ddStratId = -1) { double mult = GetDynamicMultiplier(); g_DynMultLast = mult; double v = baseLot * mult; if(optionalCap > 0.0 && v > optionalCap) v = optionalCap; - return NormalizeVolumeForSymbol(symbol, v); + return LotsAfterDrawdownCap(symbol, v, ddStratId); } void RefreshDynamicStrategyLots() { + UpdateEquityPeakForDdCap(); + if(!InpDynamicLotEnable) { - g_ES_LotSize = NormalizeVolumeForSymbol(ES_Symbol, ES_LotGröße); - g_RC_LotSize = NormalizeVolumeForSymbol(RC_Symbol, RC_lotSize); - g_RM_LotSize = NormalizeVolumeForSymbol(RM_Symbol, RM_InpLotSize); - g_DB_LotSize = NormalizeVolumeForSymbol(DB_Symbol, DB_BaseLotSize); + g_ES_LotSize = LotsAfterDrawdownCap(ES_Symbol, ES_LotGröße * UnitedAdaptive_GetLotMult(UNITED_AD_ES), UNITED_AD_ES); + g_RC_LotSize = LotsAfterDrawdownCap(RC_Symbol, RC_lotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RC), UNITED_AD_RC); + g_RM_LotSize = LotsAfterDrawdownCap(RM_Symbol, RM_InpLotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RM), UNITED_AD_RM); + g_DB_LotSize = LotsAfterDrawdownCap(DB_Symbol, DB_BaseLotSize * UnitedAdaptive_GetLotMult(UNITED_AD_DARVAS), UNITED_AD_DARVAS); g_DynMultLast = 1.0; return; } - g_ES_LotSize = DynamicLotForSymbol(ES_Symbol, ES_LotGröße); - g_RC_LotSize = DynamicLotForSymbol(RC_Symbol, RC_lotSize); - g_RM_LotSize = DynamicLotForSymbol(RM_Symbol, RM_InpLotSize); - g_DB_LotSize = DynamicLotForSymbol(DB_Symbol, DB_BaseLotSize); + g_ES_LotSize = DynamicLotForSymbol(ES_Symbol, ES_LotGröße * UnitedAdaptive_GetLotMult(UNITED_AD_ES), 0.0, UNITED_AD_ES); + g_RC_LotSize = DynamicLotForSymbol(RC_Symbol, RC_lotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RC), 0.0, UNITED_AD_RC); + g_RM_LotSize = DynamicLotForSymbol(RM_Symbol, RM_InpLotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RM), 0.0, UNITED_AD_RM); + g_DB_LotSize = DynamicLotForSymbol(DB_Symbol, DB_BaseLotSize * UnitedAdaptive_GetLotMult(UNITED_AD_DARVAS), 0.0, UNITED_AD_DARVAS); } //+------------------------------------------------------------------+ @@ -493,7 +658,16 @@ void RefreshDynamicStrategyLots() int OnInit() { int initResult = INIT_SUCCEEDED; - + + UnitedAdaptive_Init(); + + g_equityPeakHighWater = InpDdLotCapUseEquity ? AccountInfoDouble(ACCOUNT_EQUITY) : AccountInfoDouble(ACCOUNT_BALANCE); + if(g_equityPeakHighWater <= 0.0) + g_equityPeakHighWater = MathMax(InpDynamicRefDeposit, 1.0); + g_ddLotCapAnchorTime = TimeCurrent(); + + UnitedAdaptive_UpdateIfDue(); + RefreshDynamicStrategyLots(); // Initialize strategies - log warnings but don't fail entire EA if symbol unavailable @@ -530,21 +704,39 @@ int OnInit() InitRSIScalping(rsXAUUSDData, RS_XAUUSD_Symbol, RS_XAUUSD_TimeFrame, RS_XAUUSD_RSI_Period, RS_XAUUSD_RSI_Applied_Price, RS_XAUUSD_MagicNumber, RS_XAUUSD_Slippage); // Initialize RSI Reversal Asian strategies - if(EnableRSIReversalAsianEURUSD) + if(EnableRSIReversalEURUSD) if(!InitRSIReversalAsian(rraEURUSDData, RRA_EURUSD_Symbol, RRA_EURUSD_RSIPeriod, RRA_EURUSD_OverboughtLevel, RRA_EURUSD_OversoldLevel, RRA_EURUSD_TakeProfitPips, RRA_EURUSD_StopLossPips, RRA_EURUSD_MaxLotSize, RRA_EURUSD_MaxSpread, RRA_EURUSD_MaxDuration, RRA_EURUSD_UseStopLoss, RRA_EURUSD_UseTakeProfit, RRA_EURUSD_UseRSIExit, RRA_EURUSD_RSIExitLevel, RRA_EURUSD_CloseOutsideSession, RRA_EURUSD_TimeFrame, RRA_EURUSD_MagicNumber, RRA_EURUSD_Slippage)) - Print("Warning: RSIReversalAsianEURUSD strategy failed to initialize for symbol '", RRA_EURUSD_Symbol, "'"); + Print("Warning: RSIReversalEURUSD strategy failed to initialize for symbol '", RRA_EURUSD_Symbol, "'"); - if(EnableRSIReversalAsianAUDUSD) + if(EnableRSIReversalAUDUSD) if(!InitRSIReversalAsian(rraAUDUSDData, RRA_AUDUSD_Symbol, RRA_AUDUSD_RSIPeriod, RRA_AUDUSD_OverboughtLevel, RRA_AUDUSD_OversoldLevel, RRA_AUDUSD_TakeProfitPips, RRA_AUDUSD_StopLossPips, RRA_AUDUSD_MaxLotSize, RRA_AUDUSD_MaxSpread, RRA_AUDUSD_MaxDuration, RRA_AUDUSD_UseStopLoss, RRA_AUDUSD_UseTakeProfit, RRA_AUDUSD_UseRSIExit, RRA_AUDUSD_RSIExitLevel, RRA_AUDUSD_CloseOutsideSession, RRA_AUDUSD_TimeFrame, RRA_AUDUSD_MagicNumber, RRA_AUDUSD_Slippage)) - Print("Warning: RSIReversalAsianAUDUSD strategy failed to initialize for symbol '", RRA_AUDUSD_Symbol, "'"); + Print("Warning: RSIReversalAUDUSD strategy failed to initialize for symbol '", RRA_AUDUSD_Symbol, "'"); + + if(EnableRSISecretSauceXAUUSD) + if(!InitRSISecretSauce(rsSecretSauceXAUUSDData, RSS_XAUUSD_Symbol, RSS_XAUUSD_Timeframe, RSS_XAUUSD_RSIPeriod, + RSS_XAUUSD_RSIOverbought, RSS_XAUUSD_RSIOversold, RSS_XAUUSD_RSILookback, RSS_XAUUSD_PeakBars, + RSS_XAUUSD_RequireDivergence, RSS_XAUUSD_StopLossATR, RSS_XAUUSD_TakeProfitATR, RSS_XAUUSD_ATRPeriod, + RSS_XAUUSD_UseSwingStopLoss, RSS_XAUUSD_SwingLookback, RSS_XAUUSD_MaxPositions, + RSS_XAUUSD_MinBarsBetweenTrades, RSS_XAUUSD_MagicNumber, RSS_XAUUSD_Slippage)) + Print("Warning: RSISecretSauceXAUUSD failed to initialize for symbol '", RSS_XAUUSD_Symbol, "'"); + + if(EnableSuperEMA) + if(!InitSuperEMA(seData, SE_Symbol, SE_Timeframe, SE_SlippagePoints, SE_MagicNumber, + SE_EmaFast, SE_EmaMid, SE_EmaSlow, SE_EmaTrendBars, + SE_CciPeriod, SE_CciOverbought, SE_CciOversold, SE_PullbackCciLookback, + SE_MacdFast, SE_MacdSlow, SE_MacdSignal, + SE_EntryStyle, SE_OneTradeOnly, SE_UseStructuralSL, SE_SlBufferPoints, + SE_ExitOnTrendFlip, SE_ExitOnMacdFlip, SE_ExitOnCciZeroCross, + SE_MaxHoldingBars, SE_ExitBelowMidEma, SE_DebugLogs)) + Print("Warning: SuperEMA failed to initialize for symbol '", SE_Symbol, "'"); string acctCur = AccountInfoString(ACCOUNT_CURRENCY); double eq0 = AccountInfoDouble(ACCOUNT_EQUITY); @@ -554,7 +746,7 @@ int OnInit() capInit = refvInit; double ratioInit = capInit / refvInit; double rawPowInit = MathPow(ratioInit, InpDynamicExponent); - Print("United EA v1.07 ", acctCur, " equity=", DoubleToString(eq0, 2), " equity/ref=", DoubleToString(ratioInit, 6), + Print("United EA v1.17 ", acctCur, " equity=", DoubleToString(eq0, 2), " equity/ref=", DoubleToString(ratioInit, 6), " raw^exp=", DoubleToString(rawPowInit, 6), " multOut=", DoubleToString(g_DynMultLast, 6), " minM=", InpDynamicMinMult, " maxM=", InpDynamicMaxMult, " ref=", InpDynamicRefDeposit, " exp=", InpDynamicExponent, " lots ES=", g_ES_LotSize, " RC=", g_RC_LotSize, " RM=", g_RM_LotSize, " DB=", g_DB_LotSize); @@ -568,9 +760,29 @@ int OnInit() (EnableRSIScalpingNVDA ? "RSIScalpingNVDA " : ""), (EnableRSIScalpingTSLA ? "RSIScalpingTSLA " : ""), (EnableRSIScalpingXAUUSD ? "RSIScalpingXAUUSD " : ""), - (EnableRSIReversalAsianEURUSD ? "RSIReversalAsianEURUSD " : ""), - (EnableRSIReversalAsianAUDUSD ? "RSIReversalAsianAUDUSD " : "")); - + (EnableRSIReversalEURUSD ? "RSIReversalEURUSD " : ""), + (EnableRSIReversalAUDUSD ? "RSIReversalAUDUSD " : ""), + (EnableRSISecretSauceXAUUSD ? "RSISecretSauceXAUUSD " : ""), + (EnableSuperEMA ? "SuperEMA " : "")); + + EventSetTimer(0); + int timerSec = 0; + if(UnitedPanel_Enable) + timerSec = MathMax(5, UnitedPanel_Seconds); + if(InpAdaptiveEnable) + { + const int adSec = MathMax(60, InpAdaptiveUpdateSeconds); + timerSec = (timerSec == 0) ? adSec : MathMin(timerSec, adSec); + } + if(InpDdLotCapEnable && InpDdLotCapPerStratEnable && !InpAdaptiveEnable) + { + const int ddSec = MathMax(60, InpDdLotCapUpdateSeconds); + timerSec = (timerSec == 0) ? ddSec : MathMin(timerSec, ddSec); + } + if(timerSec > 0) + EventSetTimer(timerSec); + UnitedProfitPanelInit(); + return initResult; } @@ -579,6 +791,9 @@ int OnInit() //+------------------------------------------------------------------+ void OnDeinit(const int reason) { + EventSetTimer(0); + UnitedProfitPanelDeinit(); + if(EnableDarvasBox) DeinitDarvasBox(); @@ -606,11 +821,17 @@ void OnDeinit(const int reason) if(EnableRSIScalpingXAUUSD) DeinitRSIScalping(rsXAUUSDData); - if(EnableRSIReversalAsianEURUSD) + if(EnableRSIReversalEURUSD) DeinitRSIReversalAsian(rraEURUSDData); - if(EnableRSIReversalAsianAUDUSD) + if(EnableRSIReversalAUDUSD) DeinitRSIReversalAsian(rraAUDUSDData); + + if(EnableRSISecretSauceXAUUSD) + DeinitRSISecretSauce(rsSecretSauceXAUUSDData); + + if(EnableSuperEMA) + DeinitSuperEMA(seData); Print("United EA deinitialized. Reason: ", reason); } @@ -620,56 +841,84 @@ void OnDeinit(const int reason) //+------------------------------------------------------------------+ void OnTick() { + UnitedAdaptive_ProcessCanaryTransitions(); RefreshDynamicStrategyLots(); - if(EnableDarvasBox) + if(EnableDarvasBox && UnitedAdaptive_StrategyActive(UNITED_AD_DARVAS)) ProcessDarvasBox(DB_Symbol); - if(EnableEMASlopeDistance) + if(EnableEMASlopeDistance && UnitedAdaptive_StrategyActive(UNITED_AD_ES)) ProcessEMASlopeDistance(ES_Symbol); - if(EnableRSICrossOverReversal) + if(EnableRSICrossOverReversal && UnitedAdaptive_StrategyActive(UNITED_AD_RC)) ProcessRSICrossOverReversal(RC_Symbol); - if(EnableRSIMidPointHijack) + if(EnableRSIMidPointHijack && UnitedAdaptive_StrategyActive(UNITED_AD_RM)) ProcessRSIMidPointHijack(RM_Symbol); - if(EnableRSIScalpingAPPL) + if(EnableRSIScalpingAPPL && UnitedAdaptive_StrategyActive(UNITED_AD_RS_APPL)) ProcessRSIScalping(rsAPPLData, RS_APPL_Symbol, RS_APPL_TimeFrame, RS_APPL_RSI_Period, RS_APPL_RSI_Applied_Price, RS_APPL_RSI_Overbought, RS_APPL_RSI_Oversold, RS_APPL_RSI_Target_Buy, RS_APPL_RSI_Target_Sell, RS_APPL_BarsToWait, - DynamicLotForSymbol(RS_APPL_Symbol, RS_APPL_LotSize, InpDynamicStockLotCap), + DynamicLotForSymbol(RS_APPL_Symbol, RS_APPL_LotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RS_APPL), InpDynamicStockLotCap, UNITED_AD_RS_APPL), RS_APPL_MagicNumber); - if(EnableRSIScalpingBTCUSD) + if(EnableRSIScalpingBTCUSD && UnitedAdaptive_StrategyActive(UNITED_AD_RS_BTC)) ProcessRSIScalping(rsBTCUSDData, RS_BTCUSD_Symbol, RS_BTCUSD_TimeFrame, RS_BTCUSD_RSI_Period, RS_BTCUSD_RSI_Applied_Price, RS_BTCUSD_RSI_Overbought, RS_BTCUSD_RSI_Oversold, RS_BTCUSD_RSI_Target_Buy, RS_BTCUSD_RSI_Target_Sell, - RS_BTCUSD_BarsToWait, DynamicLotForSymbol(RS_BTCUSD_Symbol, RS_BTCUSD_LotSize), RS_BTCUSD_MagicNumber); + RS_BTCUSD_BarsToWait, DynamicLotForSymbol(RS_BTCUSD_Symbol, RS_BTCUSD_LotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RS_BTC), 0.0, UNITED_AD_RS_BTC), RS_BTCUSD_MagicNumber); - if(EnableRSIScalpingNVDA) + if(EnableRSIScalpingNVDA && UnitedAdaptive_StrategyActive(UNITED_AD_RS_NVDA)) ProcessRSIScalping(rsNVDAData, RS_NVDA_Symbol, RS_NVDA_TimeFrame, RS_NVDA_RSI_Period, RS_NVDA_RSI_Applied_Price, RS_NVDA_RSI_Overbought, RS_NVDA_RSI_Oversold, RS_NVDA_RSI_Target_Buy, RS_NVDA_RSI_Target_Sell, RS_NVDA_BarsToWait, - DynamicLotForSymbol(RS_NVDA_Symbol, RS_NVDA_LotSize, InpDynamicStockLotCap), + DynamicLotForSymbol(RS_NVDA_Symbol, RS_NVDA_LotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RS_NVDA), InpDynamicStockLotCap, UNITED_AD_RS_NVDA), RS_NVDA_MagicNumber); - if(EnableRSIScalpingTSLA) + if(EnableRSIScalpingTSLA && UnitedAdaptive_StrategyActive(UNITED_AD_RS_TSLA)) ProcessRSIScalping(rsTSLAData, RS_TSLA_Symbol, RS_TSLA_TimeFrame, RS_TSLA_RSI_Period, RS_TSLA_RSI_Applied_Price, RS_TSLA_RSI_Overbought, RS_TSLA_RSI_Oversold, RS_TSLA_RSI_Target_Buy, RS_TSLA_RSI_Target_Sell, RS_TSLA_BarsToWait, - DynamicLotForSymbol(RS_TSLA_Symbol, RS_TSLA_LotSize, InpDynamicStockLotCap), + DynamicLotForSymbol(RS_TSLA_Symbol, RS_TSLA_LotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RS_TSLA), InpDynamicStockLotCap, UNITED_AD_RS_TSLA), RS_TSLA_MagicNumber); - if(EnableRSIScalpingXAUUSD) + if(EnableRSIScalpingXAUUSD && UnitedAdaptive_StrategyActive(UNITED_AD_RS_XAU)) ProcessRSIScalping(rsXAUUSDData, RS_XAUUSD_Symbol, RS_XAUUSD_TimeFrame, RS_XAUUSD_RSI_Period, RS_XAUUSD_RSI_Applied_Price, RS_XAUUSD_RSI_Overbought, RS_XAUUSD_RSI_Oversold, RS_XAUUSD_RSI_Target_Buy, RS_XAUUSD_RSI_Target_Sell, - RS_XAUUSD_BarsToWait, DynamicLotForSymbol(RS_XAUUSD_Symbol, RS_XAUUSD_LotSize), RS_XAUUSD_MagicNumber); + RS_XAUUSD_BarsToWait, DynamicLotForSymbol(RS_XAUUSD_Symbol, RS_XAUUSD_LotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RS_XAU), 0.0, UNITED_AD_RS_XAU), RS_XAUUSD_MagicNumber); - if(EnableRSIReversalAsianEURUSD) - ProcessRSIReversalAsian(rraEURUSDData, DynamicLotForSymbol(RRA_EURUSD_Symbol, RRA_EURUSD_MaxLotSize)); + if(EnableRSIReversalEURUSD && UnitedAdaptive_StrategyActive(UNITED_AD_RRA_EUR)) + ProcessRSIReversalAsian(rraEURUSDData, DynamicLotForSymbol(RRA_EURUSD_Symbol, RRA_EURUSD_MaxLotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RRA_EUR), 0.0, UNITED_AD_RRA_EUR)); - if(EnableRSIReversalAsianAUDUSD) - ProcessRSIReversalAsian(rraAUDUSDData, DynamicLotForSymbol(RRA_AUDUSD_Symbol, RRA_AUDUSD_MaxLotSize)); + if(EnableRSIReversalAUDUSD && UnitedAdaptive_StrategyActive(UNITED_AD_RRA_AUD)) + ProcessRSIReversalAsian(rraAUDUSDData, DynamicLotForSymbol(RRA_AUDUSD_Symbol, RRA_AUDUSD_MaxLotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RRA_AUD), 0.0, UNITED_AD_RRA_AUD)); + + if(EnableRSISecretSauceXAUUSD && UnitedAdaptive_StrategyActive(UNITED_AD_RSS)) + ProcessRSISecretSauce(rsSecretSauceXAUUSDData, DynamicLotForSymbol(RSS_XAUUSD_Symbol, RSS_XAUUSD_LotSize * UnitedAdaptive_GetLotMult(UNITED_AD_RSS), 0.0, UNITED_AD_RSS)); + + if(EnableSuperEMA && UnitedAdaptive_StrategyActive(UNITED_AD_SUPEREMA)) + ProcessSuperEMA(seData, DynamicLotForSymbol(SE_Symbol, SE_LotSize * UnitedAdaptive_GetLotMult(UNITED_AD_SUPEREMA), 0.0, UNITED_AD_SUPEREMA)); +} + +//+------------------------------------------------------------------+ +//| Timer — refresh profit panel (history scan) | +//+------------------------------------------------------------------+ +void OnTimer() +{ + if(InpAdaptiveEnable) + UnitedAdaptive_ProcessCanaryTransitions(); + if(InpAdaptiveEnable || (InpDdLotCapEnable && InpDdLotCapPerStratEnable)) + UnitedAdaptive_UpdateIfDue(); + if(UnitedPanel_Enable) + UnitedProfitPanelRefresh(); +} + +//+------------------------------------------------------------------+ +//| Chart events — panel layout on resize | +//+------------------------------------------------------------------+ +void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam) +{ + UnitedProfitPanelOnChartEvent(id); } //+------------------------------------------------------------------+ diff --git a/frontline/MQL5/_united_dynamic/report/ReportHistory-51389369.xlsx b/frontline/MQL5/_united_dynamic/report/ReportHistory-51389369.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..2c70abbcf57917a227eec2d439acfadabf60a03f GIT binary patch literal 264920 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 literal 0 HcmV?d00001 diff --git a/frontline/MQL5/_united_dynamic/report/fig-pnl-by-magic.tex b/frontline/MQL5/_united_dynamic/report/fig-pnl-by-magic.tex new file mode 100644 index 0000000..ef4e2c2 --- /dev/null +++ b/frontline/MQL5/_united_dynamic/report/fig-pnl-by-magic.tex @@ -0,0 +1,6 @@ +\begin{figure}[t] + \centering + \includegraphics[width=\linewidth]{frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.pdf} + \caption{Net closed P\&L by robot magic number from the united\_dynamic live report export. Bars show net realized P\&L (USD) and the label \texttt{n} is the number of closed trades. Because the MT5 report does not expose per-deal magic directly in this extract, XAUUSD trades that come from multiple XAU strategies are shown as one mixed bucket.} + \label{fig:united-dynamic-pnl-by-magic} +\end{figure} diff --git a/frontline/MQL5/_united_dynamic/report/fig-pnl-timeseries-by-robot.tex b/frontline/MQL5/_united_dynamic/report/fig-pnl-timeseries-by-robot.tex new file mode 100644 index 0000000..27aceb6 --- /dev/null +++ b/frontline/MQL5/_united_dynamic/report/fig-pnl-timeseries-by-robot.tex @@ -0,0 +1,6 @@ +\begin{figure*}[t] + \centering + \includegraphics[width=\textwidth]{frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.pdf} + \caption{Cumulative closed P\&L over time split by robot. Non-XAU robots are mapped directly by symbol-to-magic configuration; XAU trades are assigned by ticket-matched strategy comments when available, and otherwise grouped into an unattributed XAU bucket.} + \label{fig:united-dynamic-pnl-timeseries-by-robot} +\end{figure*} diff --git a/frontline/MQL5/_united_dynamic/report/fig-pnl-timeseries.tex b/frontline/MQL5/_united_dynamic/report/fig-pnl-timeseries.tex new file mode 100644 index 0000000..869a4af --- /dev/null +++ b/frontline/MQL5/_united_dynamic/report/fig-pnl-timeseries.tex @@ -0,0 +1,6 @@ +\begin{figure}[t] + \centering + \includegraphics[width=\linewidth]{frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.pdf} + \caption{Cumulative closed P\&L over time for the united\_dynamic account history in \texttt{ReportHistory-51389369.xlsx}. The curve is formed by sorting closed deals by close timestamp and cumulatively summing realized deal P\&L.} + \label{fig:united-dynamic-pnl-timeseries} +\end{figure} diff --git a/frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.csv b/frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.csv new file mode 100644 index 0000000..ffdc7b1 --- /dev/null +++ b/frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.csv @@ -0,0 +1,9 @@ +symbol,magic_number,robot,count,sum +MSFT.US,20002,RSI Scalping MSFT,12,-1042.0 +EURUSD,30001,RSI Reversal Asian EURUSD,20,-264.84999999999997 +BTCUSD,123459123,RSI Scalping BTCUSD,11,-203.41000000000003 +NVDA.US,20003,RSI Scalping NVDA,32,-42.54000000000002 +AAPL.US,20001,RSI Scalping AAPL,5,-2.0 +AUDUSD,30002,RSI Reversal Asian AUDUSD,14,78.08000000000001 +XAUUSD,MIXED,XAUUSD Multi-Strategy Bucket,291,1953.66 +TSLA.US,125421321,RSI Scalping TSLA,16,2352.57 diff --git a/frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.pdf b/frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d568aef4eabbe3d0371d30ccc9d8e40ecc56d70a GIT binary patch literal 21450 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 literal 0 HcmV?d00001 diff --git a/frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.png b/frontline/MQL5/_united_dynamic/report/pnl_by_magic_robot.png new file mode 100644 index 0000000000000000000000000000000000000000..e698c1f79b1803ec27351f8849d18d1aae9bd2c8 GIT binary patch literal 140663 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 literal 0 HcmV?d00001 diff --git a/frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.csv b/frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.csv new file mode 100644 index 0000000..bf2bc4b --- /dev/null +++ b/frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.csv @@ -0,0 +1,386 @@ +close_time,125421321 RSI Scalping TSLA,XAU Unattributed (multiple robots),129102315 RSI Scalping XAUUSD,30002 RSI Reversal Asian AUDUSD,20003 RSI Scalping NVDA,12350 EMA Slope Distance (XAU),123459123 RSI Scalping BTCUSD,30001 RSI Reversal Asian EURUSD,20002 RSI Scalping MSFT +2026-01-05 08:00:00,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 +2026-01-05 12:06:01,0.0,0.0,0.0,0.0,0.0,61.98,0.0,0.0,0.0 +2026-01-05 18:06:21,0.0,0.0,0.0,0.0,0.0,86.07,0.0,0.0,0.0 +2026-01-06 07:55:38,0.0,0.0,0.0,0.0,0.0,86.07,0.0,-3.0,0.0 +2026-01-06 08:00:00,0.0,0.0,0.0,4.2,0.0,86.07,0.0,-3.0,0.0 +2026-01-06 12:00:00,0.0,0.0,-81.78,4.2,0.0,86.07,0.0,-3.0,0.0 +2026-01-06 15:13:04,0.0,0.0,-78.69,4.2,0.0,86.07,0.0,-3.0,0.0 +2026-01-06 16:39:10,0.0,0.0,-78.69,4.2,0.0,111.69,0.0,-3.0,0.0 +2026-01-06 19:42:51,0.0,0.0,-78.69,4.2,0.0,101.72999999999999,0.0,-3.0,0.0 +2026-01-07 08:00:00,0.0,0.0,-78.69,12.2,0.0,101.72999999999999,0.0,-3.0,0.0 +2026-01-07 11:00:00,0.0,0.0,-78.69,12.2,0.0,29.189999999999984,0.0,-3.0,0.0 +2026-01-08 08:21:15,0.0,0.0,-78.69,12.2,0.0,29.339999999999982,0.0,-3.0,0.0 +2026-01-08 18:00:00,0.0,0.0,-78.69,12.2,0.0,29.339999999999982,0.0,-3.0,-49.1 +2026-01-09 07:00:00,0.0,0.0,-78.69,12.2,0.0,29.339999999999982,0.0,-3.0,-49.1 +2026-01-12 03:00:00,0.0,0.0,296.85,12.2,0.0,29.339999999999982,0.0,-3.0,-49.1 +2026-01-12 05:43:32,0.0,0.0,296.85,12.2,0.0,36.11999999999998,0.0,-3.0,-49.1 +2026-01-12 06:00:00,0.0,0.0,296.85,12.2,0.0,35.399999999999984,0.0,-3.0,-49.1 +2026-01-12 06:01:28,0.0,0.0,296.85,12.2,0.0,35.399999999999984,0.0,-3.8,-49.1 +2026-01-13 00:01:01,0.0,0.0,296.85,12.2,0.0,35.399999999999984,0.0,-10.2,-49.1 +2026-01-13 03:00:00,0.0,0.0,246.06000000000003,12.2,0.0,35.399999999999984,0.0,-10.2,-49.1 +2026-01-13 16:28:43,0.0,0.0,267.48,12.2,0.0,56.819999999999986,0.0,-10.2,-49.1 +2026-01-13 20:00:00,0.0,0.0,267.48,12.2,0.0,-63.00000000000001,0.0,-10.2,-49.1 +2026-01-14 05:28:14,0.0,0.0,267.48,12.2,0.0,-72.63000000000001,0.0,-10.2,-49.1 +2026-01-14 07:19:03,0.0,0.0,305.1,12.2,0.0,-72.63000000000001,0.0,-10.2,-49.1 +2026-01-14 15:00:44,0.0,-11.19,305.1,12.2,0.0,-72.63000000000001,0.0,-10.2,-49.1 +2026-01-14 17:11:47,49.1,-11.19,305.1,12.2,0.0,-72.63000000000001,0.0,-10.2,-49.1 +2026-01-15 03:00:00,49.1,-74.88,305.1,12.2,0.0,-72.63000000000001,0.0,-10.2,-49.1 +2026-01-15 07:28:43,49.1,-69.75,305.1,12.2,0.0,-72.63000000000001,0.0,-10.2,-49.1 +2026-01-15 17:00:00,49.1,-141.66,305.1,12.2,0.0,-72.63000000000001,0.0,-10.2,-49.1 +2026-01-16 08:00:00,49.1,-152.35999999999999,305.1,12.2,0.0,-72.63000000000001,0.0,-10.2,-49.1 +2026-01-19 01:01:01,49.1,-348.98,305.1,12.2,0.0,-72.63000000000001,0.0,-10.2,-49.1 +2026-01-19 02:08:19,49.1,-348.98,305.1,12.2,0.0,-72.63000000000001,0.0,-0.6999999999999993,-49.1 +2026-01-19 03:00:46,49.1,-354.74,305.1,12.2,0.0,-72.63000000000001,0.0,-0.6999999999999993,-49.1 +2026-01-19 04:00:26,49.1,-354.74,305.1,12.2,0.0,-72.63000000000001,0.0,9.4,-49.1 +2026-01-20 00:01:00,49.1,-354.74,305.1,12.2,0.0,-72.63000000000001,0.0,-5.199999999999999,-49.1 +2026-01-20 07:24:12,49.1,-282.38,305.1,12.2,0.0,-72.63000000000001,0.0,-5.199999999999999,-49.1 +2026-01-20 08:00:00,49.1,-282.38,305.1,-4.199999999999999,0.0,-72.63000000000001,0.0,-5.199999999999999,-49.1 +2026-01-20 09:51:16,49.1,-271.4,305.1,-4.199999999999999,0.0,-72.63000000000001,0.0,-5.199999999999999,-49.1 +2026-01-20 10:19:24,49.1,-254.29999999999998,305.1,-4.199999999999999,0.0,-72.63000000000001,0.0,-5.199999999999999,-49.1 +2026-01-20 12:00:07,49.1,-247.93999999999997,305.1,-4.199999999999999,0.0,-72.63000000000001,0.0,-5.199999999999999,-49.1 +2026-01-20 15:34:19,49.1,-237.22999999999996,305.1,-4.199999999999999,0.0,-72.63000000000001,0.0,-5.199999999999999,-49.1 +2026-01-21 00:01:00,49.1,-237.22999999999996,305.1,-4.199999999999999,0.0,-72.63000000000001,0.0,-81.3,-49.1 +2026-01-21 17:24:43,49.1,-145.00999999999996,305.1,-4.199999999999999,0.0,-72.63000000000001,0.0,-81.3,-49.1 +2026-01-22 02:00:00,49.1,-361.5799999999999,305.1,-4.199999999999999,0.0,-72.63000000000001,0.0,-81.3,-49.1 +2026-01-22 08:00:00,49.1,-459.2299999999999,305.1,-31.4,0.0,-72.63000000000001,0.0,-81.3,-49.1 +2026-01-22 18:00:00,23.700000000000003,-459.2299999999999,305.1,-31.4,0.0,-72.63000000000001,0.0,-81.3,-49.1 +2026-01-22 18:30:02,23.700000000000003,-434.1799999999999,305.1,-31.4,0.0,-72.63000000000001,0.0,-81.3,-49.1 +2026-01-22 21:27:07,23.700000000000003,-334.9099999999999,305.1,-31.4,0.0,-72.63000000000001,0.0,-81.3,-49.1 +2026-01-22 22:00:00,23.700000000000003,-335.6599999999999,305.1,-31.4,0.0,-72.63000000000001,0.0,-81.3,-49.1 +2026-01-23 03:00:00,23.700000000000003,-498.8299999999999,305.1,-31.4,0.0,-72.63000000000001,0.0,-81.3,-49.1 +2026-01-23 04:44:42,23.700000000000003,-498.8299999999999,305.1,-31.4,0.0,-72.63000000000001,0.0,-81.39999999999999,-49.1 +2026-01-23 05:16:54,23.700000000000003,-506.74999999999994,305.1,-31.4,0.0,-72.63000000000001,0.0,-81.39999999999999,-49.1 +2026-01-23 08:00:00,23.700000000000003,-506.74999999999994,305.1,-46.0,0.0,-72.63000000000001,0.0,-81.39999999999999,-49.1 +2026-01-23 11:00:00,23.700000000000003,-388.3399999999999,305.1,-46.0,0.0,-72.63000000000001,0.0,-81.39999999999999,-49.1 +2026-01-26 04:00:00,23.700000000000003,34.3300000000001,305.1,-46.0,0.0,-72.63000000000001,0.0,-81.39999999999999,-49.1 +2026-01-26 08:00:00,23.700000000000003,34.3300000000001,305.1,-34.4,0.0,-72.63000000000001,0.0,-81.39999999999999,-49.1 +2026-01-26 21:00:00,23.700000000000003,65.1700000000001,305.1,-34.4,0.0,-72.63000000000001,0.0,-81.39999999999999,-49.1 +2026-01-27 00:01:00,23.700000000000003,65.1700000000001,305.1,-34.4,0.0,-72.63000000000001,0.0,-214.09999999999997,-49.1 +2026-01-27 04:00:00,23.700000000000003,-41.089999999999904,305.1,-34.4,0.0,-72.63000000000001,0.0,-214.09999999999997,-49.1 +2026-01-27 05:07:00,23.700000000000003,-41.089999999999904,305.1,-34.4,0.0,-72.63000000000001,0.0,-207.59999999999997,-49.1 +2026-01-27 06:09:45,23.700000000000003,-40.60999999999991,305.1,-34.4,0.0,-72.63000000000001,0.0,-207.59999999999997,-49.1 +2026-01-27 08:50:00,23.700000000000003,-5.089999999999904,305.1,-34.4,0.0,-72.63000000000001,0.0,-207.59999999999997,-49.1 +2026-01-27 09:12:16,23.700000000000003,-0.25999999999990386,305.1,-34.4,0.0,-72.63000000000001,0.0,-207.59999999999997,-49.1 +2026-01-27 11:45:33,23.700000000000003,2.560000000000096,305.1,-34.4,0.0,-72.63000000000001,0.0,-207.59999999999997,-49.1 +2026-01-27 16:00:00,23.700000000000003,-61.159999999999904,305.1,-34.4,0.0,-72.63000000000001,0.0,-207.59999999999997,-49.1 +2026-01-27 17:03:41,54.300000000000004,-61.159999999999904,305.1,-34.4,0.0,-72.63000000000001,0.0,-207.59999999999997,-49.1 +2026-01-27 23:00:30,54.300000000000004,159.3400000000001,305.1,-34.4,0.0,-72.63000000000001,0.0,-207.59999999999997,-49.1 +2026-01-28 03:31:17,54.300000000000004,159.3400000000001,305.1,-34.4,0.0,-72.63000000000001,0.0,-171.69999999999996,-49.1 +2026-01-28 07:01:59,54.300000000000004,588.97,305.1,-34.4,0.0,-72.63000000000001,0.0,-171.69999999999996,-49.1 +2026-01-28 08:00:00,54.300000000000004,588.97,305.1,-27.2,0.0,-72.63000000000001,0.0,-171.69999999999996,-49.1 +2026-01-28 09:00:38,54.300000000000004,601.69,305.1,-27.2,0.0,-72.63000000000001,0.0,-171.69999999999996,-49.1 +2026-01-28 10:12:05,54.300000000000004,603.82,305.1,-27.2,0.0,-72.63000000000001,0.0,-171.69999999999996,-49.1 +2026-01-28 14:12:22,54.300000000000004,604.0,305.1,-27.2,0.0,-72.63000000000001,0.0,-171.69999999999996,-49.1 +2026-01-28 17:12:17,54.300000000000004,647.86,305.1,-27.2,0.0,-72.63000000000001,0.0,-171.69999999999996,-49.1 +2026-01-28 18:53:19,54.300000000000004,647.86,305.1,-27.2,0.0,-72.63000000000001,0.0,-171.69999999999996,2.3999999999999986 +2026-01-28 19:08:19,54.300000000000004,645.46,305.1,-27.2,0.0,-72.63000000000001,0.0,-171.69999999999996,2.3999999999999986 +2026-01-29 02:00:01,54.300000000000004,-0.8899999999999864,305.1,-27.2,0.0,-72.63000000000001,0.0,-171.69999999999996,2.3999999999999986 +2026-01-29 07:58:06,54.300000000000004,-0.8899999999999864,305.1,-27.2,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-01-29 08:00:00,54.300000000000004,-0.8899999999999864,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-01-29 12:38:43,54.300000000000004,8.890000000000013,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-01-30 01:01:01,54.300000000000004,-650.63,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-01-30 04:00:00,54.300000000000004,-1064.69,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-01-30 06:00:34,54.300000000000004,-1001.1800000000001,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-01-30 07:00:00,54.300000000000004,-1003.58,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-01-30 09:00:00,54.300000000000004,-1044.07,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-01-30 11:00:10,54.300000000000004,-873.4,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-01-30 20:00:04,54.300000000000004,-397.51,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-01-30 23:00:03,54.300000000000004,-318.01,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-02-03 02:00:00,54.300000000000004,-244.57,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-02-03 04:00:10,54.300000000000004,-85.47999999999999,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-02-03 07:13:20,54.300000000000004,-60.609999999999985,305.1,-57.8,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-02-03 08:00:00,54.300000000000004,-60.609999999999985,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-02-03 08:12:16,54.300000000000004,-30.879999999999985,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-02-03 09:16:31,54.300000000000004,-23.319999999999986,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-02-03 10:24:18,54.300000000000004,32.72000000000001,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-02-03 17:27:59,154.4,32.72000000000001,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-159.99999999999997,2.3999999999999986 +2026-02-04 04:50:05,154.4,32.72000000000001,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-152.49999999999997,2.3999999999999986 +2026-02-04 07:00:00,154.4,31.830000000000013,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-152.49999999999997,2.3999999999999986 +2026-02-04 07:00:02,154.4,482.03999999999996,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-152.49999999999997,2.3999999999999986 +2026-02-04 12:13:15,154.4,487.61999999999995,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-152.49999999999997,2.3999999999999986 +2026-02-04 18:24:11,154.4,558.9,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-152.49999999999997,2.3999999999999986 +2026-02-05 00:01:00,154.4,558.9,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-05 01:01:00,154.4,305.93999999999994,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-05 04:00:00,154.4,145.13999999999993,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-05 08:00:12,154.4,155.80999999999992,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-05 17:48:31,154.4,177.07999999999993,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-05 23:01:58,154.4,181.36999999999992,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-06 01:01:01,154.4,131.0399999999999,305.1,-61.599999999999994,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-06 04:01:08,154.4,131.0399999999999,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-06 08:00:00,154.4,-452.8200000000001,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-09 03:51:31,154.4,-249.7200000000001,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-09 03:59:22,154.4,-83.5700000000001,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-09 07:00:00,154.4,-87.02000000000011,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-09 13:00:00,154.4,73.72999999999989,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-09 15:00:02,154.4,69.55999999999989,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-09 17:43:21,-126.6,69.55999999999989,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 05:00:00,-126.6,-29.140000000000114,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 07:00:00,-126.6,-30.010000000000115,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 07:15:30,-126.6,50.63999999999989,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 10:50:55,-126.6,76.61999999999989,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 11:13:05,-126.6,111.65999999999988,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 12:54:34,-126.6,123.17999999999988,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 13:18:10,-126.6,126.59999999999988,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 16:25:00,-126.6,213.71999999999989,305.1,9.400000000000006,0.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 16:45:00,-126.6,213.71999999999989,305.1,9.400000000000006,2.0,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 17:00:00,-126.6,213.71999999999989,305.1,9.400000000000006,2.55,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 17:15:40,-126.6,213.8999999999999,305.1,9.400000000000006,2.55,-72.63000000000001,0.0,-129.39999999999998,2.3999999999999986 +2026-02-10 21:00:01,-126.6,213.8999999999999,305.1,9.400000000000006,2.55,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-11 04:02:06,-126.6,237.0299999999999,305.1,9.400000000000006,2.55,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-11 07:48:46,-126.6,237.9299999999999,305.1,9.400000000000006,2.55,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-11 08:00:00,-126.6,218.2799999999999,305.1,9.400000000000006,2.55,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-11 11:49:18,-126.6,235.7999999999999,305.1,9.400000000000006,2.55,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-11 12:27:16,-126.6,295.1599999999999,305.1,9.400000000000006,2.55,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-11 13:24:06,-126.6,304.6699999999999,305.1,9.400000000000006,2.55,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-11 17:25:57,-126.6,304.6699999999999,305.1,9.400000000000006,3.0,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-11 19:20:00,-126.6,304.6699999999999,305.1,9.400000000000006,3.0,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-12 05:00:00,-126.6,174.6699999999999,305.1,9.400000000000006,3.0,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-12 07:00:00,-126.6,173.1699999999999,305.1,9.400000000000006,3.0,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-12 09:00:00,-126.6,14.919999999999902,305.1,9.400000000000006,3.0,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-12 17:45:00,-126.6,14.919999999999902,305.1,9.400000000000006,17.45,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-12 18:00:01,-126.6,14.919999999999902,305.1,9.400000000000006,19.849999999999998,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-12 20:01:58,-126.6,43.119999999999905,305.1,9.400000000000006,19.849999999999998,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-12 23:02:07,-126.6,97.1499999999999,305.1,9.400000000000006,19.849999999999998,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-13 05:18:27,-126.6,105.3999999999999,305.1,9.400000000000006,19.849999999999998,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-13 08:00:00,-126.6,0.9699999999998994,305.1,9.400000000000006,19.849999999999998,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-13 15:42:45,-126.6,-294.7100000000001,305.1,9.400000000000006,19.849999999999998,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-13 19:00:00,-126.6,-488.5700000000001,305.1,9.400000000000006,19.849999999999998,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-13 21:42:00,-126.6,-488.5700000000001,305.1,9.400000000000006,28.349999999999998,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-13 21:58:36,-126.6,-446.1500000000001,305.1,9.400000000000006,28.349999999999998,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-13 22:00:00,-126.6,-446.1500000000001,305.1,9.400000000000006,32.55,-72.63000000000001,0.0,-129.39999999999998,-20.5 +2026-02-16 02:00:00,-126.6,-446.1500000000001,305.1,9.400000000000006,32.55,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-16 05:00:00,-126.6,-579.1000000000001,305.1,9.400000000000006,32.55,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-17 17:00:00,-49.8,-579.1000000000001,305.1,9.400000000000006,32.55,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-17 17:45:00,-49.8,-579.1000000000001,305.1,9.400000000000006,26.449999999999996,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-19 22:00:00,-49.8,-133.80000000000013,305.1,9.400000000000006,26.449999999999996,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-20 07:00:00,-49.8,-201.30000000000013,305.1,9.400000000000006,26.449999999999996,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-23 02:00:00,-49.8,1316.8999999999999,305.1,9.400000000000006,26.449999999999996,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-24 02:00:00,-49.8,407.79999999999984,305.1,9.400000000000006,26.449999999999996,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-24 04:00:00,-49.8,860.9999999999998,305.1,9.400000000000006,26.449999999999996,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-24 10:01:34,-49.8,880.3799999999998,305.1,9.400000000000006,26.449999999999996,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-24 14:01:01,-49.8,873.7799999999997,305.1,9.400000000000006,26.449999999999996,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-24 18:00:00,-49.8,759.9899999999998,305.1,9.400000000000006,26.449999999999996,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-24 18:15:00,-49.8,759.9899999999998,305.1,9.400000000000006,-58.300000000000004,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-25 05:55:01,-49.8,762.1799999999998,305.1,9.400000000000006,-58.300000000000004,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-25 08:00:56,-49.8,811.8899999999999,305.1,9.400000000000006,-58.300000000000004,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-25 16:00:00,-49.8,634.3899999999999,305.1,9.400000000000006,-58.300000000000004,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-25 18:07:26,-49.8,624.6399999999999,305.1,9.400000000000006,-58.300000000000004,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-25 23:00:03,-49.8,442.65999999999985,305.1,9.400000000000006,-58.300000000000004,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-26 03:00:00,-49.8,375.05999999999983,305.1,9.400000000000006,-58.300000000000004,-72.63000000000001,-16.6,-129.39999999999998,-20.5 +2026-02-26 06:00:00,-49.8,375.05999999999983,305.1,9.400000000000006,-58.300000000000004,-72.63000000000001,106.34,-129.39999999999998,-20.5 +2026-02-26 13:00:00,-49.8,293.0099999999998,305.1,9.400000000000006,-58.300000000000004,-72.63000000000001,106.34,-129.39999999999998,-20.5 +2026-02-26 16:45:00,-49.8,293.0099999999998,305.1,9.400000000000006,21.699999999999996,-72.63000000000001,106.34,-129.39999999999998,-20.5 +2026-02-26 16:46:48,-49.8,293.0099999999998,305.1,9.400000000000006,26.399999999999995,-72.63000000000001,106.34,-129.39999999999998,-20.5 +2026-02-26 16:46:53,-49.8,293.0099999999998,305.1,9.400000000000006,52.099999999999994,-72.63000000000001,106.34,-129.39999999999998,-20.5 +2026-02-26 16:46:56,-49.8,293.0099999999998,305.1,9.400000000000006,89.94999999999999,-72.63000000000001,106.34,-129.39999999999998,-20.5 +2026-02-26 18:56:28,-49.8,293.0099999999998,305.1,9.400000000000006,89.94999999999999,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-02-26 20:45:00,-49.8,293.0099999999998,305.1,9.400000000000006,40.44999999999999,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-02-26 22:30:01,-49.8,293.0099999999998,305.1,9.400000000000006,3.6999999999999886,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-02-27 07:00:01,-49.8,292.3299999999998,305.1,9.400000000000006,3.6999999999999886,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-02-27 16:45:00,-49.8,292.3299999999998,305.1,9.400000000000006,5.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-02-27 18:00:00,-49.8,292.3299999999998,305.1,9.400000000000006,13.199999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-02-27 18:00:33,-49.8,329.3799999999998,305.1,9.400000000000006,13.199999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-02-27 18:15:00,-49.8,329.3799999999998,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-02-27 20:15:53,-49.8,337.0899999999998,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-02-27 21:03:14,187.2,337.0899999999998,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-02-27 23:01:44,187.2,377.5299999999998,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-02 01:03:37,187.2,1653.3299999999997,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-02 02:00:03,187.2,1747.1699999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-02 06:01:54,187.2,1803.8999999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-02 09:01:24,187.2,1889.0999999999997,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-02 09:13:03,187.2,1095.8999999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-02 17:00:00,187.2,1730.3999999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-02 18:00:30,187.2,1378.8899999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-02 23:30:48,187.2,1418.6999999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-03 02:00:21,187.2,1442.7299999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-03 05:17:20,187.2,1477.2599999999995,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-03 11:00:00,187.2,530.9999999999995,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-03 12:00:00,187.2,529.2599999999995,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-03 13:00:18,187.2,593.6999999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-18.25 +2026-03-03 16:31:02,187.2,593.6999999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-98.75 +2026-03-03 17:00:05,187.2,897.6599999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-98.75 +2026-03-03 20:00:21,187.2,935.6399999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-98.75 +2026-03-03 22:00:04,187.2,996.3299999999997,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-98.75 +2026-03-04 18:00:00,187.2,828.2399999999997,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-98.75 +2026-03-04 20:00:10,187.2,844.6499999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,106.34,-129.39999999999998,-98.75 +2026-03-05 04:00:00,187.2,844.6499999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-05 05:00:00,187.2,668.1899999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-05 09:00:00,187.2,415.9899999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-05 16:00:00,187.2,371.4299999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-05 16:00:11,187.2,456.3299999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-05 19:02:14,187.2,515.6099999999996,305.1,9.400000000000006,11.449999999999989,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-05 20:30:00,187.2,515.6099999999996,305.1,9.400000000000006,-1.0500000000000114,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-06 12:00:00,187.2,417.5299999999996,305.1,9.400000000000006,-1.0500000000000114,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-06 15:00:00,187.2,355.42999999999955,305.1,9.400000000000006,-1.0500000000000114,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-06 17:00:00,187.2,209.44999999999956,305.1,9.400000000000006,-1.0500000000000114,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-06 22:30:00,187.2,209.44999999999956,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-09 01:01:22,187.2,288.10999999999956,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-09 04:06:01,187.2,357.8299999999996,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-09 05:00:00,187.2,-362.5700000000004,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-09 09:00:00,187.2,-525.8900000000003,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-09 12:01:35,187.2,-530.5700000000003,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-09 17:00:00,599.95,-530.5700000000003,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-09 17:00:25,599.95,-500.0600000000003,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-10 01:01:33,599.95,-490.52000000000027,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-10 05:02:32,599.95,-405.5600000000003,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-10 08:00:01,599.95,-407.40000000000026,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-10 09:05:27,599.95,-379.41000000000025,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-10 11:03:06,599.95,-369.30000000000024,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-10 17:00:17,599.95,-311.97000000000025,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-10 19:03:01,599.95,-253.23000000000025,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-11 07:00:00,599.95,-253.71000000000024,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-11 10:00:00,599.95,299.38999999999976,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-11 15:00:01,599.95,158.68999999999977,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-11 16:31:01,510.95000000000005,158.68999999999977,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-98.75 +2026-03-11 18:00:00,510.95000000000005,158.68999999999977,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-131.25 +2026-03-12 03:09:47,510.95000000000005,155.53999999999976,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-131.25 +2026-03-12 06:01:28,510.95000000000005,152.23999999999975,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-131.25 +2026-03-12 11:00:00,510.95000000000005,32.05999999999975,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-131.25 +2026-03-12 12:00:00,510.95000000000005,40.11999999999975,305.1,9.400000000000006,-71.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-131.25 +2026-03-12 17:30:01,510.95000000000005,40.11999999999975,305.1,9.400000000000006,27.19999999999999,-72.63000000000001,259.51,-129.39999999999998,-131.25 +2026-03-12 18:46:42,510.95000000000005,102.39999999999975,305.1,9.400000000000006,27.19999999999999,-72.63000000000001,259.51,-129.39999999999998,-131.25 +2026-03-12 19:04:29,510.95000000000005,151.41999999999976,305.1,9.400000000000006,27.19999999999999,-72.63000000000001,259.51,-129.39999999999998,-131.25 +2026-03-12 21:00:02,510.95000000000005,151.41999999999976,305.1,9.400000000000006,27.19999999999999,-72.63000000000001,259.51,-129.39999999999998,-174.5 +2026-03-12 21:01:15,510.95000000000005,196.56999999999977,305.1,9.400000000000006,27.19999999999999,-72.63000000000001,259.51,-129.39999999999998,-174.5 +2026-03-12 23:01:04,510.95000000000005,216.24999999999977,305.1,9.400000000000006,27.19999999999999,-72.63000000000001,259.51,-129.39999999999998,-174.5 +2026-03-13 08:00:00,510.95000000000005,195.32999999999976,305.1,9.400000000000006,27.19999999999999,-72.63000000000001,259.51,-129.39999999999998,-174.5 +2026-03-13 18:00:14,510.95000000000005,286.34999999999974,305.1,9.400000000000006,27.19999999999999,-72.63000000000001,259.51,-129.39999999999998,-174.5 +2026-03-13 19:30:00,510.95000000000005,286.34999999999974,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,259.51,-129.39999999999998,-174.5 +2026-03-13 23:00:00,510.95000000000005,286.34999999999974,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,28.92999999999998,-129.39999999999998,-174.5 +2026-03-13 23:00:35,510.95000000000005,330.9299999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,28.92999999999998,-129.39999999999998,-174.5 +2026-03-16 03:00:15,510.95000000000005,355.52999999999975,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,28.92999999999998,-129.39999999999998,-174.5 +2026-03-16 05:00:33,510.95000000000005,376.43999999999977,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,28.92999999999998,-129.39999999999998,-174.5 +2026-03-16 11:00:31,510.95000000000005,392.00999999999976,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,28.92999999999998,-129.39999999999998,-174.5 +2026-03-16 13:09:14,510.95000000000005,429.08999999999975,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,28.92999999999998,-129.39999999999998,-174.5 +2026-03-16 14:00:00,510.95000000000005,457.3099999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,28.92999999999998,-129.39999999999998,-174.5 +2026-03-16 15:00:00,510.95000000000005,457.3099999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-1.2600000000000229,-129.39999999999998,-174.5 +2026-03-16 17:00:00,501.95000000000005,457.3099999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-1.2600000000000229,-129.39999999999998,-174.5 +2026-03-17 11:00:01,501.95000000000005,457.3099999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-17 14:00:00,501.95000000000005,401.4499999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-17 14:08:21,501.95000000000005,421.4899999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-17 19:18:11,501.95000000000005,429.28999999999974,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-17 23:04:43,501.95000000000005,424.45999999999975,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-18 05:00:33,501.95000000000005,418.78999999999974,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-18 06:00:00,501.95000000000005,401.00999999999976,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-18 07:24:05,501.95000000000005,394.76999999999975,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-18 14:14:57,501.95000000000005,443.4299999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-18 16:31:00,503.70000000000005,443.4299999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-18 16:42:22,503.70000000000005,580.7099999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-18 18:00:39,503.70000000000005,597.5699999999997,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-18 22:04:29,503.70000000000005,618.3899999999998,305.1,9.400000000000006,-16.55000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-18 22:45:00,503.70000000000005,618.3899999999998,305.1,9.400000000000006,-35.05000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-19 01:01:09,503.70000000000005,647.6999999999997,305.1,9.400000000000006,-35.05000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-19 05:07:38,503.70000000000005,647.6999999999997,305.1,51.60000000000001,-35.05000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-19 09:00:35,503.70000000000005,659.9999999999997,305.1,51.60000000000001,-35.05000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-19 11:00:07,503.70000000000005,761.2199999999997,305.1,51.60000000000001,-35.05000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-19 13:00:36,503.70000000000005,783.0299999999996,305.1,51.60000000000001,-35.05000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-19 16:20:36,503.70000000000005,1087.8299999999997,305.1,51.60000000000001,-35.05000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-19 16:31:00,1279.2,1087.8299999999997,305.1,51.60000000000001,-35.05000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-19 18:00:12,1279.2,1136.1899999999996,305.1,51.60000000000001,-35.05000000000001,-72.63000000000001,-142.25000000000003,-129.39999999999998,-174.5 +2026-03-20 04:50:41,1279.2,1136.1899999999996,305.1,51.60000000000001,-35.05000000000001,-72.63000000000001,-142.25000000000003,-109.49999999999997,-174.5 +2026-03-20 18:00:00,1279.2,1136.1899999999996,305.1,51.60000000000001,-186.55,-72.63000000000001,-142.25000000000003,-109.49999999999997,-174.5 +2026-03-20 20:45:00,1279.2,1136.1899999999996,305.1,51.60000000000001,-275.05,-72.63000000000001,-142.25000000000003,-109.49999999999997,-174.5 +2026-03-23 23:00:00,1279.2,1136.1899999999996,305.1,51.60000000000001,-275.05,-72.63000000000001,-225.91000000000003,-109.49999999999997,-174.5 +2026-03-24 04:00:00,1279.2,1009.8699999999997,305.1,51.60000000000001,-275.05,-72.63000000000001,-225.91000000000003,-109.49999999999997,-174.5 +2026-03-24 17:30:00,1279.2,1009.8699999999997,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-109.49999999999997,-174.5 +2026-03-25 02:00:30,1279.2,1028.9499999999996,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-109.49999999999997,-174.5 +2026-03-25 04:00:04,1279.2,1065.3699999999997,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-109.49999999999997,-174.5 +2026-03-25 04:54:18,1279.2,1065.3699999999997,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-25 16:31:01,871.7,1065.3699999999997,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-25 23:00:00,871.7,871.1799999999996,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-26 01:01:01,871.7,1292.4799999999996,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-26 05:00:47,871.7,1284.1699999999996,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-26 12:00:55,871.7,1305.8899999999996,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-26 13:00:00,871.7,1353.8899999999996,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-26 15:00:47,871.7,1347.1999999999996,305.1,51.60000000000001,-392.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-26 17:30:00,871.7,1347.1999999999996,305.1,51.60000000000001,-391.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-26 20:00:33,871.7,1457.0299999999995,305.1,51.60000000000001,-391.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-26 23:11:44,871.7,1488.7099999999996,305.1,51.60000000000001,-391.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-27 04:00:00,871.7,1421.1099999999997,305.1,51.60000000000001,-391.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-27 04:00:03,871.7,1417.3899999999996,305.1,51.60000000000001,-391.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-27 09:00:00,871.7,1308.3699999999997,305.1,51.60000000000001,-391.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-27 14:00:12,871.7,1330.2699999999998,305.1,51.60000000000001,-391.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-27 16:31:00,1699.7,1330.2699999999998,305.1,51.60000000000001,-391.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-27 18:00:01,1699.7,1054.2399999999998,305.1,51.60000000000001,-391.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-27 20:30:01,1699.7,1054.2399999999998,305.1,51.60000000000001,-477.05,-72.63000000000001,-225.91000000000003,-102.99999999999997,-174.5 +2026-03-27 21:00:00,1699.7,1054.2399999999998,305.1,51.60000000000001,-477.05,-72.63000000000001,-225.91000000000003,-102.99999999999997,-117.5 +2026-03-30 03:00:01,1699.7,828.9099999999997,305.1,51.60000000000001,-477.05,-72.63000000000001,-225.91000000000003,-102.99999999999997,-117.5 +2026-03-30 04:00:13,1699.7,70.40999999999974,305.1,51.60000000000001,-477.05,-72.63000000000001,-225.91000000000003,-102.99999999999997,-117.5 +2026-03-30 05:00:00,1699.7,-33.84000000000026,305.1,51.60000000000001,-477.05,-72.63000000000001,-225.91000000000003,-102.99999999999997,-117.5 +2026-03-30 09:00:03,1699.7,33.29999999999974,305.1,51.60000000000001,-477.05,-72.63000000000001,-225.91000000000003,-102.99999999999997,-117.5 +2026-03-30 10:00:00,1699.7,32.679999999999744,305.1,51.60000000000001,-477.05,-72.63000000000001,-225.91000000000003,-102.99999999999997,-117.5 +2026-03-30 12:06:36,1699.7,44.169999999999746,305.1,51.60000000000001,-477.05,-72.63000000000001,-225.91000000000003,-102.99999999999997,-117.5 +2026-03-30 15:00:29,1699.7,113.01999999999974,305.1,51.60000000000001,-477.05,-72.63000000000001,-225.91000000000003,-102.99999999999997,-117.5 +2026-03-30 22:30:00,1699.7,113.01999999999974,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-117.5 +2026-03-30 23:00:00,1699.7,37.119999999999735,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-102.99999999999997,-117.5 +2026-03-31 04:50:01,1699.7,37.119999999999735,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-03-31 05:00:17,1699.7,129.66999999999973,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-03-31 07:00:00,1699.7,129.30999999999972,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-03-31 09:00:13,1699.7,122.34999999999972,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-03-31 11:02:00,1699.7,133.98999999999972,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-03-31 15:14:01,1699.7,167.58999999999972,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-03-31 17:09:58,1699.7,253.86999999999972,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-03-31 21:10:02,1699.7,253.86999999999972,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-03-31 22:08:48,1699.7,448.26999999999975,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-04-01 03:00:31,1699.7,475.2399999999998,305.1,51.60000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-04-01 08:00:00,1699.7,475.2399999999998,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-94.59999999999997,-117.5 +2026-04-02 00:01:00,1699.7,475.2399999999998,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-117.5 +2026-04-02 08:00:00,1699.7,1736.6399999999999,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-117.5 +2026-04-02 18:00:01,1699.7,1470.8999999999999,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-117.5 +2026-04-06 03:01:14,1699.7,1538.61,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-117.5 +2026-04-06 08:00:00,1699.7,1426.62,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-117.5 +2026-04-06 12:50:29,1699.7,1448.79,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-117.5 +2026-04-06 17:00:00,1699.7,1295.09,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-117.5 +2026-04-06 18:00:00,1699.7,1295.09,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-188.5 +2026-04-06 18:40:05,1699.7,1295.09,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-188.5 +2026-04-06 20:00:00,1699.7,1195.1899999999998,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-188.5 +2026-04-06 20:00:01,2471.7,1195.1899999999998,305.1,99.80000000000001,-642.55,-72.63000000000001,-225.91000000000003,-138.49999999999997,-188.5 +2026-04-07 01:00:00,2471.7,1195.1899999999998,305.1,99.80000000000001,-642.55,-72.63000000000001,-113.86000000000003,-138.49999999999997,-188.5 +2026-04-07 08:00:01,2471.7,1094.1499999999999,305.1,99.80000000000001,-642.55,-72.63000000000001,-113.86000000000003,-138.49999999999997,-188.5 +2026-04-07 14:00:00,2471.7,998.3899999999999,305.1,99.80000000000001,-642.55,-72.63000000000001,-113.86000000000003,-138.49999999999997,-188.5 +2026-04-07 16:00:00,2471.7,684.1899999999998,305.1,99.80000000000001,-642.55,-72.63000000000001,-113.86000000000003,-138.49999999999997,-188.5 +2026-04-07 17:30:00,2471.7,684.1899999999998,305.1,99.80000000000001,-264.04999999999995,-72.63000000000001,-113.86000000000003,-138.49999999999997,-188.5 +2026-04-07 18:00:01,2471.7,684.1899999999998,305.1,99.80000000000001,-264.04999999999995,-72.63000000000001,-113.86000000000003,-138.49999999999997,-356.5 +2026-04-07 21:00:00,2471.7,555.0999999999998,305.1,99.80000000000001,-264.04999999999995,-72.63000000000001,-113.86000000000003,-138.49999999999997,-356.5 +2026-04-08 01:01:06,2471.7,678.7299999999998,305.1,99.80000000000001,-264.04999999999995,-72.63000000000001,-113.86000000000003,-138.49999999999997,-356.5 +2026-04-08 03:00:07,2471.7,712.4799999999998,305.1,99.80000000000001,-264.04999999999995,-72.63000000000001,-113.86000000000003,-138.49999999999997,-356.5 +2026-04-08 08:00:00,2471.7,712.4799999999998,305.1,-72.39999999999998,-264.04999999999995,-72.63000000000001,-113.86000000000003,-138.49999999999997,-356.5 +2026-04-08 09:08:23,2471.7,730.9599999999998,305.1,-72.39999999999998,-264.04999999999995,-72.63000000000001,-113.86000000000003,-138.49999999999997,-356.5 +2026-04-08 10:00:00,2471.7,730.9599999999998,305.1,-72.39999999999998,-264.04999999999995,-72.63000000000001,-96.76000000000002,-138.49999999999997,-356.5 +2026-04-08 16:31:00,2471.7,730.9599999999998,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-138.49999999999997,-356.5 +2026-04-08 18:20:00,2471.7,730.9599999999998,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-138.49999999999997,-356.5 +2026-04-08 20:00:00,2471.7,1312.6599999999999,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-138.49999999999997,-356.5 +2026-04-08 21:00:01,2471.7,1056.0099999999998,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-138.49999999999997,-356.5 +2026-04-09 00:01:00,2471.7,1056.0099999999998,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-356.5 +2026-04-09 13:00:01,2471.7,978.8799999999998,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-356.5 +2026-04-09 16:31:01,2471.7,978.8799999999998,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-953.0 +2026-04-09 17:00:38,2471.7,995.0199999999998,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-953.0 +2026-04-09 19:13:39,2471.7,1057.1799999999998,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-953.0 +2026-04-09 21:01:21,2471.7,1073.4099999999999,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-953.0 +2026-04-10 01:01:52,2471.7,1075.2699999999998,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-953.0 +2026-04-10 05:00:02,2471.7,1155.7699999999998,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-953.0 +2026-04-10 05:00:30,2471.7,1149.5899999999997,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-953.0 +2026-04-10 17:00:01,2471.7,1149.9499999999996,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-953.0 +2026-04-10 18:36:21,2471.7,1149.9499999999996,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-10 21:00:00,2471.7,985.5499999999996,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-13 01:01:02,2471.7,641.7499999999995,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-13 01:01:03,2471.7,1087.5699999999995,305.1,-72.39999999999998,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-13 07:33:34,2471.7,1087.5699999999995,305.1,78.08000000000001,198.95000000000005,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-13 18:00:01,2471.7,1087.5699999999995,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-13 20:00:00,2352.5699999999997,787.4099999999994,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-14 04:00:02,2352.5699999999997,813.0899999999993,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-14 06:00:57,2352.5699999999997,833.8799999999993,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-14 08:02:23,2352.5699999999997,847.8799999999993,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-14 09:00:04,2352.5699999999997,844.2399999999993,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-96.76000000000002,-211.49999999999997,-1042.0 +2026-04-14 09:00:07,2352.5699999999997,844.2399999999993,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,0.9899999999999807,-211.49999999999997,-1042.0 +2026-04-14 12:05:23,2352.5699999999997,851.1599999999993,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,0.9899999999999807,-211.49999999999997,-1042.0 +2026-04-14 18:00:36,2352.5699999999997,939.3599999999993,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,0.9899999999999807,-211.49999999999997,-1042.0 +2026-04-14 21:21:16,2352.5699999999997,1039.9199999999994,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,0.9899999999999807,-211.49999999999997,-1042.0 +2026-04-14 23:00:00,2352.5699999999997,1039.9199999999994,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-203.41000000000003,-211.49999999999997,-1042.0 +2026-04-14 23:04:34,2352.5699999999997,1068.0699999999995,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-203.41000000000003,-211.49999999999997,-1042.0 +2026-04-15 00:01:00,2352.5699999999997,1068.0699999999995,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-203.41000000000003,-264.84999999999997,-1042.0 +2026-04-15 05:15:57,2352.5699999999997,1086.4199999999994,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-203.41000000000003,-264.84999999999997,-1042.0 +2026-04-15 08:30:19,2352.5699999999997,1076.7199999999993,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-203.41000000000003,-264.84999999999997,-1042.0 +2026-04-15 12:00:00,2352.5699999999997,1796.5999999999995,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-203.41000000000003,-264.84999999999997,-1042.0 +2026-04-15 14:00:00,2352.5699999999997,1721.9599999999994,305.1,78.08000000000001,-42.539999999999964,-72.63000000000001,-203.41000000000003,-264.84999999999997,-1042.0 diff --git a/frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.pdf b/frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c120048c9813a39b3357ee8c3d7767c19812857f GIT binary patch literal 25451 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 PFu1mL<&{eZ_gVi2q}&mX literal 0 HcmV?d00001 diff --git a/frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.png b/frontline/MQL5/_united_dynamic/report/pnl_timeseries_by_robot.png new file mode 100644 index 0000000000000000000000000000000000000000..06d4383186e4b2cf4f1bc014e72315beccc1b516 GIT binary patch literal 273391 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

    iqn5izn6z@z7cXEY-a=U!%1S~Qi{3e z5)K+=C4R*+KZ|)U?}u(`eWP=WX)a7k=E8+;c;klG#%-h591QjN_q-2AvIM}nyHZyc z`yRy*OrtKnW=jZXR*jX#yARxL?Frq8FF7-Ri+wqv*d@FUNOzY!PoZiC2kv~fm}7>$ z+ozlIDfwJ;M^FjGjGy#b%Ma$ic$X2)&rn;Vw*u|7%wnTSw^aS4+!uFu!5oIJ%FUCP7Ty4GD|^IHZ1g5A%?!_Kw>rT;z@p zs3PU2#{k+gM{AEaHc1xmH9OhQNpy1!mCEIq+C0@xbn{L%$wyDHre`>-zo;uE!y+=T znc+E6jrdDPuv4oKa?OpXQJ_NlW>Vie(GW(k63;%K6*c;@=~q3X&G#bDrx};Iq4$)= z{CI%LXtVK&J)4szuIqsbjpx=IdM>YOE>wnW=QHWr<0v>VP;hcun?gNCZ9r+y%g2ba zGVkrTrd-R3_bl6%-4|apF3@g#*S*MyWL*$Lm$^puGabIoSb%OOIJt~TkBN#FMHXY5 zlQvWRwD_1?_ahDiil-b0gfRh+M+iuN9xt*=YD*uiEhsjadYZkWrg%>$BbiyM_Rd{n zZE)fo>ovVg%9?~^*w~!2?)`v|T12**!bSL)b<04KM{}8JdlNiw%^MqLHu>Ya2MT2w zhIHDyLF7sbt$sXS%L=B-_JeBd6tPV@W5-_y1!CbTjAxHAF)zF-DX<4uZoBYhBIRa< zfOA!k@XpH3eeW>32-XFTjakux#Y%lT!qS%Y=ViCE7!JA}yiaghSsQzm=H0J^&Rg+P zG}IXOdY)uo^|J64e=;c^y;Ve(I1UDWC|az08QEEj-DSPn5_76__OPF8_C5_{p%%4j zon~YEWZXTTk~8~-wUk<3(S66u;i(>|+s+`1k$6hQa}`N{8#^|I(Z2snjv*^UB}`ot zB*Ncfvc)aXpVpDFQ|31NoS5B7^|P^@DsfA{iUoMsr|00L^{V%K8d=>a z){c>1UD$})#wD(EvrN3KSbOe$n-P^AmDG{SvFfE3T$jV5*RR?@qby;MJX+jt;@3f; zeeaVinwQ?>Zsa}fRP3w&PvQ3Qxa8hL>6@{iW!EoEUg2Z0iD~f1D1V4;c)%KyjIFt3 z0$WTHefMy^Q=E#>1@<%cvoann;Y)~R#VnSJR=maTn`p!kabzc5PDrw({E_fAYhCO! z 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 literal 0 HcmV?d00001 diff --git a/frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.csv b/frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.csv new file mode 100644 index 0000000..306f937 --- /dev/null +++ b/frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.csv @@ -0,0 +1,102 @@ +close_time,daily_pnl,cum_pnl +2026-01-05,85.61999999999999,85.61999999999999 +2026-01-06,-61.83,23.789999999999992 +2026-01-07,-64.69000000000001,-40.90000000000002 +2026-01-08,-48.95,-89.85000000000002 +2026-01-09,-0.17,-90.02000000000002 +2026-01-10,0.0,-90.02000000000002 +2026-01-11,0.0,-90.02000000000002 +2026-01-12,380.8,290.78 +2026-01-13,-134.17,156.60999999999999 +2026-01-14,65.9,222.51 +2026-01-15,-130.47,92.03999999999999 +2026-01-16,-10.7,81.33999999999999 +2026-01-17,0.0,81.33999999999999 +2026-01-18,0.0,81.33999999999999 +2026-01-19,-182.78,-101.44000000000001 +2026-01-20,86.51,-14.930000000000007 +2026-01-21,16.120000000000005,1.1899999999999977 +2026-01-22,-243.25,-242.06 +2026-01-23,-67.38,-309.44 +2026-01-24,0.0,-309.44 +2026-01-25,0.0,-309.44 +2026-01-26,465.11,155.67000000000002 +2026-01-27,-1.4299999999999784,154.24000000000004 +2026-01-28,580.72,734.96 +2026-01-29,-655.47,79.49000000000001 +2026-01-30,-326.9,-247.40999999999997 +2026-01-31,0.0,-247.40999999999997 +2026-02-01,0.0,-247.40999999999997 +2026-02-02,0.0,-247.40999999999997 +2026-02-03,447.03,199.62 +2026-02-04,533.68,733.3 +2026-02-05,-354.43,378.86999999999995 +2026-02-06,-563.19,-184.3200000000001 +2026-02-07,0.0,-184.3200000000001 +2026-02-08,0.0,-184.3200000000001 +2026-02-09,241.38,57.05999999999989 +2026-02-10,123.99000000000001,181.0499999999999 +2026-02-11,111.97,293.01999999999987 +2026-02-12,-190.67000000000002,102.34999999999985 +2026-02-13,-530.6,-428.25000000000017 +2026-02-14,0.0,-428.25000000000017 +2026-02-15,0.0,-428.25000000000017 +2026-02-16,-149.54999999999998,-577.8000000000002 +2026-02-17,70.7,-507.1000000000002 +2026-02-18,0.0,-507.1000000000002 +2026-02-19,445.3,-61.80000000000018 +2026-02-20,-67.5,-129.30000000000018 +2026-02-21,0.0,-129.30000000000018 +2026-02-22,0.0,-129.30000000000018 +2026-02-23,1518.2,1388.8999999999999 +2026-02-24,-656.6600000000001,732.2399999999998 +2026-02-25,-317.33,414.9099999999998 +2026-02-26,37.540000000000006,452.4499999999998 +2026-02-27,329.27,781.7199999999998 +2026-02-28,0.0,781.7199999999998 +2026-03-01,0.0,781.7199999999998 +2026-03-02,1041.1699999999998,1822.8899999999996 +2026-03-03,-502.8700000000001,1320.0199999999995 +2026-03-04,-151.68,1168.3399999999995 +2026-03-05,-188.37,979.9699999999995 +2026-03-06,-376.65999999999997,603.3099999999995 +2026-03-07,0.0,603.3099999999995 +2026-03-08,0.0,603.3099999999995 +2026-03-09,-296.76,306.5499999999995 +2026-03-10,246.82999999999998,553.3799999999994 +2026-03-11,290.42,843.7999999999995 +2026-03-12,113.06,956.8599999999994 +2026-03-13,-159.65000000000003,797.2099999999994 +2026-03-14,0.0,797.2099999999994 +2026-03-15,0.0,797.2099999999994 +2026-03-16,87.19,884.3999999999994 +2026-03-17,-173.84,710.5599999999994 +2026-03-18,177.18,887.7399999999993 +2026-03-19,1335.5,2223.2399999999993 +2026-03-20,-220.1,2003.1399999999994 +2026-03-21,0.0,2003.1399999999994 +2026-03-22,0.0,2003.1399999999994 +2026-03-23,-83.66,1919.4799999999993 +2026-03-24,-243.82,1675.6599999999994 +2026-03-25,-539.69,1135.9699999999993 +2026-03-26,618.53,1754.4999999999993 +2026-03-27,365.03,2119.5299999999993 +2026-03-28,0.0,2119.5299999999993 +2026-03-29,0.0,2119.5299999999993 +2026-03-30,-1182.6200000000001,936.9099999999992 +2026-03-31,425.55,1362.4599999999991 +2026-04-01,75.17,1437.6299999999992 +2026-04-02,951.76,2389.3899999999994 +2026-04-03,0.0,2389.3899999999994 +2026-04-04,0.0,2389.3899999999994 +2026-04-05,0.0,2389.3899999999994 +2026-04-06,421.78999999999996,2811.1799999999994 +2026-04-07,-317.53999999999996,2493.6399999999994 +2026-04-08,798.5600000000001,3292.1999999999994 +2026-04-09,-652.1,2640.0999999999995 +2026-04-10,-176.86,2463.2399999999993 +2026-04-11,0.0,2463.2399999999993 +2026-04-12,0.0,2463.2399999999993 +2026-04-13,-408.28000000000003,2054.959999999999 +2026-04-14,174.01000000000002,2228.9699999999993 +2026-04-15,600.54,2829.5099999999993 diff --git a/frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.pdf b/frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.pdf new file mode 100644 index 0000000000000000000000000000000000000000..158c7809525e5549abf414eb2d98672235122ffa GIT binary patch literal 23147 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 RUIKBlp^ek|{Pg;K`UTnoQf>eM literal 0 HcmV?d00001 diff --git a/frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.png b/frontline/MQL5/_united_dynamic/report/pnl_timeseries_line.png new file mode 100644 index 0000000000000000000000000000000000000000..5557e2e9a7f372bd8c15ef66870f5880146052b3 GIT binary patch literal 142585 zcmd?RcT|&E`!)tWOhPoX4 z1@^PBuyE*I)-hpW*=NSWvU`ecFL>wT_UFgoAC-HTEbp0m-?|rYY1#AA7bK6n-n)0lS4Bp~^Y=HTz3;ln+&W#20%zHG=dzVA3(JW< z=)WDi)2h;0cCfJM>1de+rp=AAKD+7nLh<|d)c_;I^V&l15AV_2i8{4sH#ZlXc&+=z z1JRC#Megq->np@_a`^Ay5E{Eqo{iQ|M&G{~dGyxx=)|R~cxq!xX-$2;mmdO;nV(k9 zKR9ZKzXZ8b8~Y=!4>~H{%i|A_@CD-8K;f+{O6BvdRfq5{5rA{HF^H? zT2m}S{6DYn8}3B>=QT_EZp`o3D*McSU*X=7f}Q{Q;OD9TPhLQ?gRwEKk=cemnrL@W zV`D+CI~}>TZkG`7HBI?LlL}h1M%GPBU4%dm8YOpZtS>cWkZW6452O*N>9a*;^xpS} zV^{xt596mwv9M@TZVS!-8ZG{-UGD6vsyr4O*(PSQo+& z1v{R>D`TIw$COyx%$#q?-=q^{4APW*bYShm!oovN8H(Qa!Hk*w9t@(W`&O!Fa?PM) z?3@oi92m0ZHZ(79*|;fic3#Pk&9J#Q9~ixAhsE;tk1_hOw>lK6#SLF?P8>phY|fB% zf-}CeYAB5qnVAyH#yXWq=n=A@pkPnrKCbT9sa`K@hTV#)+NB#_g{_V%68!1o$n6t$ z7W^N%DBH}I?bL93Wo90^v_aZ)@Xd+U8q<731H5p6t$(rVY(Z`#TkczI^GZoo==$Ou zd7$x!{7g`1$k?4SlhN4ky~yoVWPYr4{n=6E_NKG9AoYTGC`qs~%utl{kyFZ1b?%M! z5CJWs0b>@|P-+ObChC>w&2!E&WO`lY5sfWcLQhJ|#?-er z#lkZC5VC&b)sw~urI~6l-t1y_qmw%+yvN5`E}bn@AeG&`7AEzyH+>M8cYx9h3ROa^xW=CqWQ)Xas<^{f6P;(Q0Cqv@F1G~chv zGY#XLUcu|_4zN??eJm{JyV;<{DlcJJ(-sxMlU?bWCk|7tbHt&l?oNG{wC$_(BqnBV z-1I*}WsYx$t8A^2nuPo$4KL!IPsJuKEC@lvcxz}SbGfE8);O&jfXq533f~(P5xq6&a?D{FwU7GinyL9u_ zS4S=gUgD)Hm$zK{U^r6qt&~gaNo6NY)m^?@T6wYcIX*+HZiPIM?~)O8CWOL%3=HQo zk*`I`-5yngxqGs9;KJ3FS&J4Gb|>7&21~jWcI4?6b$hFfc;7+FrorDcc$93P67>Ov zgK;IO!g_Ea)^nx-<6!~ylTY=#U&^~z5L&l*u`#PS*V&xA5IqxF76ow<4^1&-y^;q|=T5WBZw z%h`wg!bDEQE5!&=6ggjgUTWnsy1BafHJ~{$eU3Gl&p=uBt8*Pp#;L1LZrLHcr(4a%sIskZu`TN3LM9#fa-_@@Zy@3L12Fs zHBUq~f9hJ*&OS3Woblh(g)Kf=#%pZ(4E7&d)H%FB64?$MSWOf&GDI?ZGAnLX-@Spk z$TmrK*bWX}n|Rza@mOSD@6rCyA>FMM>s(2dYcu~GSa;M zBelmVK|ML$Hm(JuvG`H65*}gAOBNJc&q+Gh_Syq{;dX*L{UiJlF6Mi4w0V@PQ}kPS z73-G_byan0P-lCxP0_86mr3CpBoP<#QKX*(|Dm-XiY>|^p6)Y#joVwy%H-H6cD~m! zTw=H4cIXQE=)C;H`AT0q>Ib@EzFtC5i#zvWPWjnm?v1w|3*Eg;Z#)p`8XxWB+tpU? z+La?|c4y%otBcsxc28ZOOyKlo1f98as~poam?P7#vkw!fp4idk5^r=gdRj4q{L3A; zJl2=H)9P=L z5`6*fqvM2+?|A=|7TS8YCYZYfUY?1s5$V(xN_Aq!l6-|yLj*hIo?d!8Sx+w2Pte#3 zw64E*+rJUzIr-+pL4B?>SNWff2X)8~yaKK!pUkui7?l?+H>b!dJ~)9L3w8%{`*`oY zO`_!jwq>(~yr$we+gsIVZsRmw1FOJ7xG2;uvktexh@Q<|6a zMh3DhtMO~WNAUGBp%d(*@NYP#Y2J=jw&Kl&#~O12OM(RJNMWatqCMMdc#R5{TOPSS zp$Xr8(Ving)9I`?*J;Y~^nt-!L|@yv+%CF&H}^|t(ztZ_AxcHNw3YAmI+8B>0h)4r z?83>BT2j2~Em3Px^niuW2Fkh3B_YrV)hSl)fOqL7%920`2~c5SxzFjsq+qGh2}~bl zDEwBT-*1u@`?1Z{IpZrmnOkzqA;^`-Lw7Ii)P|m^NvoBUle?GZKYUwQ!lHD}PZ$aa zNnt{`mWHSLb$HJ3ZRU7@8f1n|+vYZ&eLi26r|(r&SNoY^Kv*FaIc&P&K|*12_k~R0 zJ9ZVX+KESVHM9+$@M8&{S=<^4K0%XDbTRgA=kn9KJ&%@u$%uzBe!{#1K#K5_U)A4Z zU=s;Kx#zu9;yAJoVd1RN0M?7@L6x6bPdh2CFl z{q0Xoq42c{Vc+Sm6u&S=MI6W>vPr;28R899DQ5oL!@$T@zp5>Li3hJ?r%uL&1S#vP0uqOJpti25X%D<}b&W<+g@GI)psK3sp3T?y zQS7Sr+l+w#LgxMyA5xn$Q>T-8V8w|-8MHr44w{JK^H00ityf0~pIA(rRufb8s={I| zsx~cxXVwQpY*quBm(oY+<#)-ZZVnRRWowgS8dh|Az=)47Uc#P+dP>l>J!6zHLW?*Q zn&q^J`^4uwY#@|-5F@fV%v&Uoo6zPs*OI5dfuE2n;2>G;f3PbAzNA@AbDc)K= zxANlk+8-hGx%k!Q)utixV5*WmzBzq0oQt_?Gq#u=cdi ztmqAy)oi(y2a|YqBr^(y&2Mz-J)L6P?YSN>>Suw!el)t%aFa&Iwloo_+c=re7k_N>424A#yem5t>X_F&TAoK~ zM2eli6Hj$rwI@ zynWe>CStcL%4p;3b6Ka{EEAuC(}p(@M;6XSCrU*z+hP_>I=wp+TWFz|G+$w-73~RZ zHA!3%*={v?NXD#L2#i1y&sHJ@zn|P9qKW#b&xcF+~=1LGcQ45zeI?Z#re>KTKVz2q?1(u+>Bs(D%+1LVskYb)sK?H4W? zg|q8BSngYAd4pt||GaGcIrxVX>uPbq!lmJXW(C1=PSPo2J-c-6alvd}M>SkNNQ8dP zPiKov8@ZJ~W-Tmgs%@3v-4gbRfUkXKLK=0v`2{lQl}dh7pAjE?UKo8y%pgNeSumfI z^ubY1FS;BqmUic2{c^W{dpt`h*=GEubj!wKDbvFdW;FiHDNT|D3rFTAu&%^7sROZmGKStk?Ka&UiX(rHZO#Ye>r2;5n z9gXQIXA}A;+V7`9BVQ9Wj7ny}#vF*xj}Z)n21w5Za#cuS5^VvvMJH|xk7-)q=cY3_ zvH(#&!Rcb-4JC2gw1cRlt-G6_Sn z$6;JJmt}sYWoYJ_qUp#qa%&n{KhH%{ASvkathAbRxTNz2XZFGN2*-_ltQOH!d$%Y{*zedNV!`d=4r>yPUO~7gO>>M z(lKPz_&9IkmYizXPi>J|x}}rQjY7YKz0Zl|XMEN{lIY;m^AR{$n+o-_*8E`I)0PHO z@Uq-e>;NQ?X^;|YYgk!+cPRXgjl`AHB+jzN#m`>takMLW+~cnoY;l*1O+4jjwp5Va zj>3hL1bumPg`iP(A)9!md)Lprp7Y^J2o%STWN;w5M&zA8KZ}PFIKfecaBnn5qB(40 z9o=85FVj>t88)_38sOJpRK>j#;1FY8oZ*z~IDS^~^E61%L-1t#)%ua-;&*NZsB7uC z_PDO-hd0g&V)o~v9MNC7jMU1zJVikG@FD~>CYJ?uxYxts$pT!wxh&IPUYK69(Up=n zqm<*13G>v9)hiX_rh)hC*`ncd8|X4 z_L4iHznx&7^Qq)cgKPhcr$#hI9uE5vC)W%BnfmJK*5|#oM(42O;UV-blUh%7O-G0~ zs#6l@=}&tezLYxtY(t2PN>JDE?!Bnpmk}~QRO0+*gb4suoTx9!^7()(qKpFp)h!L1 z^KNjn4K?7djhI+^=kCB9eoC?>1)8g!T>Vq~;0yz65ek>^%M6T< z6)cNaov*DRZvw+?Adp}HFuFU=O5AK%tL3960An=TTFE~P%HU0IByH>EK;s#xj_TMl zsWYq8l)J)OIo*4J`4Un!P1 zaqFaNc8;4~QM2e$;^Ela1^Z^IHW0Np_OPd6*V>=c;J!oX0+&AM`M7HvK?P6cqr~^r z&WuY8~)Q#UEg#1;Y`1cH-#Q1$KTg5XqZziYQ2EMK7QbO@SN9bY)ziV z#>Ao9AV>RDLn2bLuhZv-M(4RaIlC^Jx97Y&B`}?{^2*lTPEEHfvYg=6;HQoRhUq0B z-9Q*NLi*X$0T`+Db2avQIh+gs`J9_L2p;TM6Bx6C5pAt5n1`7-B zzhZ`wk}(o;K?01;KTM=VH&0-bSZPTktwZ6g*r24>U5IJ8F+XUeJtvbSm(Ht`YEvaO zMR_QyrAF<7^W&ESM}tv63OfOWYB#PMVlVf(%~yaUK5w3jU_lEbTAI2BQO=F^ptj?< zO3Y~9b&abLf!py;CR$auaDT9{WZC~h^md(r>$b);jT!!l=YRQtm?)`DnXBylYIrr0 z|1qc7)etT*p_9iE{0*GBzQHK21{|pqO3a=eP~!gbTvn8QZ(lvzXYK?gNxzGy3@5o+ zb5I{l@>=($vK=u~?LX6IogVb#g|qk4)0Dh>#*TCM8LDP z@e5iUzR^h3G|{33Roo}mOSg&dk?e-rFny#Rxsz1z< z-CK&4ZKhcTY;CNcraBzXERWSN()o#*c1g=PDQU5RKgek<6At?v!$dGLu5}W}WrCb! zwL{?)<)>;HsaL2yBO@bHW)5>8XK#nIK4MeRyHx*+z&hu-#^?n|wFd z;G{sKn^oE?aj&zV-5;LyDy(04&)%N#9o>>FllDADa}1!>KT!Qs0JZ$`K<7hsi7+Vb z?Hsl@smQXm@FcZn*E5B5Sl2;$b=<>cmJypIUJA8S+;NmFni?(- ztFfE^Adc$3t2|-F7GButU2edOJV=pZvkncbniRhK@r2;$8G8cpy187e`AJxhj??Yz zyxC#*vXWVts8u8*L?M2KJK_@?k*9UZWJ9_9*_zW6B6Bhfb{3Y5qtz_vo@qLFaAajQ zjE#lm(Nly4N(O+-N?4(fThKwJ@ApT_EnARo=jNxUI@ zW@_QXA*1TjH66b(y>_K*HnnzXbJDPNlTs^D!)I-JUxNqxQ3Ds+wpN@8g*S)7>Wq*g zE^_y|V`Vd{i@}`fJC7l2xDP6#H!qyCUSrq`y(k>9kqS-M0`NrgHRkHER+}aGwb2rxk`Vd zKFNj*#NvxL)65$V^QN;)S{{mkB3RAZAOO0=E$Odm_#9W=u3Fwh&?|d)gmfc#3m1@w zGE#abz-2bV%PG1bj<`+uct;$z&tk;9Z)rDEaBSg`J$?%pGa=~RSWae+wQ+OcYIw!= zks`g&VljytG;3Wh^G>e!II)tVqq1h7f>+gOR(c;jj;|K7*>VHIP)yawu06*yZ}5(= z>0T3u8tRn~(bac0D6wpfp>s|m?eHLYEWB}^(^7m)hW%aQg9)K+9?v)&$+Nw>iQ9pX zw0=d{CKrbZ?6r3ouRK}H(=Kq1NdU!VFNI0$uNmXURJrcB;hpz1=@<5X0|_)7k}m^__I$SDmxA&5jQ=K)5|m3f7XelxZzU)Uy1E>#pQIB z1kU*u`XJRc-0>f&Zf&#`x>W-p(}vH*?ftO6{v9NVGyP8o23E8AC-^h5J6N)gEw@yP zfN=NorhPSInEuTHC-#8R!(u!uQyYskpE-+m^Hvoip1R_bg|Yp1rfmzS_w~+FhoZ}g z^b9fk@WsT;d#YMyGifrf7R0bA3Ru%aPFR_(|G`$<0?Tf2IUG@80%C~V2R z2^<}Qs{>2w64rqXj7G=Ja&LJ#xtmUljE3R};}N-`%+-;M_I=xQ@9pHKa6tarW6v8# z1`&_k$Y48zbEg4RSROlbR^XlE7dtI zgjHQi)5QK){ORVm2XCIm`I-lMvO0>8k4kqiH|RNhO=ktiE%=#&H#$u^jBqEuxn64* zthNXpL7C@_wO#vBIH~-RJtj^L%ud!c(^wuUXEG~avVvR%Jkd9Z=odAn?Tc+rJ5LSD zY|daQbl%lxdqiv@SbVE!-c=FP`${j-L@Jic14n2B3-)vTq=Z-4&mj{YF%l^4G6TZ4 z0fkbRM`7a6RuW?a7*KIck8|+ejB-yu!Pa+Oq__~de_^+-x2)r z#N%fNOmVckMI|*?psWHLR++rh2|_384R7LQ%X-&(h~?ItcR#WxAG}F0FI+9Tf}4&2 zBzxm6I+nOf2s|`1WMXdU^QVgU0pcO#+K0I&H!wA0KkEmZbL3|rIGy)w%z4|w>;2c8 z{j0ZvNFWj-AzrJ&ZXQs*9-&jf9g&OuO0nk=Bl)#4P9NdSHD2Q+{=YBRp8O$*2QvpV;je9(axGvcs!9jK@zFFVhBH0AM!qiiLP-@yttx`z-1JZ+315Zm~yTl#U__-MoN@dSzYy;h<{q97S|v zA;u{5q`P_ax9+?Y` zM>9}w2#-PewPRa7%yYKr%%rh|+eA71`S)ZSuNlS`M9lKO!C*K4c&`+tiHO`h1~@oK zxN$E|Tgof`+`w}8k~-N%gK4D#oL|qKKw7NBNJ;h?dffoX$3Ij^t7~MoGF|f~Vu`CG zW3cH~m=8oprW~faa~7laX0m_PYru z`EB(I-t=pDbCZwGN%6dvj9y)UKoYC(b%#%)SP*kIG!?)KSlMaSLaa9MWd4P`ILi-2 z*~hf?B8>NQU88Ia9fPu`oVuJqAtRsIi>K#XwzoL9Qzq1Pzd$;KT{UwM zRf)CAP79f@6YIk$ty`;=iW_2<`;B?xPUA(8p#!T?hY@mLZ9{1|`7T4AQUDZ{mW?ka zW0wV9@6UtpiszQC$6Nsr9DT?$u)ev(fUtRZulCHItudxbm9!m^&@} zXhi$id$a0#2l(Oa+NMG!wDHCYo#34rr}%}7`T z&^)@o>|!e6LZ@1fR2q+`c~W@)v9C_N50|{f%FeN{BnJMJN5XtLIFoJJNW zaq$mVfP(q2rZ5tCL5&P59@HZ?^)Rl zXkm`-u*rOH*>Lz>HsDCI2AHie&CO^Rq5ZP{Kg2ZF^{|}U)R1vNoAZ)x`ks*Ez43tP zgZu^A(=L1{1d>29`O5G}&W=;of5I_rg7bjPwj2KiVW~t|7dfhm!+f>?qAg?RgX0Oa zHdpI+O`o|vQtNXYNaXCs@wGK$8}k7z1Xo*xdO;N4ni77rjBqG?;h|R8_|GC@O$tAa zZz7j1gj+E)eVpNe~BtGkbz8F7gj&e30pT@*|5 zcnpC=0|Q_1Oz^kZ-TkSfGh~ww57ODV9;nd3olpxJ9&7t$St54Aw zi0re)9L3nT4z!R@%F}74eGJnORDv_js&Ikz2$&U478hdqti`J{{2BJX5#p4z#quV%P)-!`%T^@E3pU`m455F-bT zy|~Sbm+}D^Xy%?QY4ue8Y7;1^sSGO*cFx1(q3ela8RNt!;WVLbprt8z;e)&Zl!6on z!wAVR9U{QbO7<%cJHs)qd1t-e)B;6Fj|;$V!etcWwaeAHr8ke>=r#37;S`dR>uYU3 z8u7_Z8zI~L11QXHd%dlw#hnRvsLQgN8^C2J245ISs19stqz}7?a2SUIBB|Zlma*6@ zJ4ot0`PNuSJlgo8&-n=;&a=l}OAQ(WlA?gP<+%Rmka`ax5{nVukv0vLnUD?)d+nX< z&a&a_3xI2W8YLYZFHi~(H9QynR?iz>wzx zF|Dc|bKHy$f77})0fwdrSmN}@LATfZki?ea#k|JXEG)fTkj|Aq`(&#r8#^v$ z!PQ|6tVCOdvx{-wp`uLowFeyvgyNj8;~%69b@;Gxt%3Dd1ayfv5j0YqaSvE(WA;Yo zmn1IBWw&mI#Oq3)J?MhlHwMvBr*+d?{U9l1|F>)WWq+hO3L^m^ep3s>Cbt1ZDD(Bw zHTgOpP}Ab|{RM;gCAZ+61nh_?5Eb!@vYab2k^ z_wf$=AXwiV|NXX*#+A6(R1IV}ZsmvyUezA8B2c(Gk**Z~Ol6;7cE6H8a!SIX z(5*%CAo>!)G_q!|zM2e<)BrB*kjF05_y*&Tx#&B%+OoY_I;}j`L#o>baElc^oYrV} zuj|s#^!>6hiu>)XR+mS_H=iL&k`7=j$#168b4Ma_S^)MwQ;-|~`TfCSBt3X@Wxxebd+$fWCm1;}x>K$+E9$aI!*-1VwT?3qDS4r$g_!)=gy2}^ zh@-MY^aF2b0*je4ZCz?CC5Pv=(pz)M@MbV`_f*4m$hVu#$1J?5H)#B^x^XzV z5TSFV&exafJC$T{i^>k&j$*xZ{OZbK4C>Bx+Vm?(uf=}7jcrPeb1&M-an1%u(E{A>8k2R{s}OkjQIv?vqz+rPo=3`Q|tEH7?6ONmc%B0@u^^dobU!ctT+H&8Izbz z<6GYYgdHBdauU2+Ph68BKE44Sh5PiK%~8i4o~FbG0Ih=8fd3F31+wHO1<}@hV{9p{ zF^t0;H#j#?nU{=D8{TT8#?ermywA_yxX5eyiGAt7D_7oga_f;wqkGng;&GY-W|HdG)W6h z2$QRsR`L-UNuSu=?gw)}7vQ8n$VG^<#DC z)nW6vL~7>doQs5Yc%w@zg|r(PNj(Tk%(*}jg07E*Q)IH^1_F7BKl^a~xnl$#>K>@D zH}4}KAq&UZo}f3e>9sQOTLNVUbGxEy+SqnoTEKpLWHw?yNW247Cqb`W42Un>!*peX@!N8%Hl>tG;yjLc9n~h#UNGgbx;wB#Vt zP;!o4wq7ZNdPO64d1KBjW>6!fCKDk_PgUBRe&_u@yG&D3AYYju`bXR<4$w1$Q?$jH|Lw1KX^wsl)ElffAdPCS8be z`3e(k3(*bDh^8pO9^=ToS|5ltwr={3;k2QwZ-Kn{WJn-B)S~Vr5{JCd+I(c&AN9?z z@epo0>f+n7TEt;cE!eYyXrB{C5*+^tbj{Hh!gw42X*vW_9}Bap4Isg9CWrshUe_Cq zl-|j#MP_sY35FdO*usa;(!QUbo)(5!p&|SVr0bguOHEBxg{WV|iV%&gwJZEN3P zoVmxhfdmBe6PDzq4XKXtK+qNv27CGPr3%QmL~gdUtW5`rH;o#P<_~+$K~md6P&gC~ z-#P}OtUWS79v|BrO&T~BGS`*w39Cs2ewtd>4)qeK0u5^)`7Xp<#0M??aK@*P#cO4E z6F8>A_L9rZ>mAx;9YGpW^3yMNd|+(MzR!m^;@e4C*({%?+jcNbjKDdl@ODT*tI8lk z-scj&I3oq(A%%C90L6TW{p+hQOja1JPHRy3EeDF4xMac3u+#YD2f*>k!W6#QI` zKYHOc2?%h4=PQD@=C4SD)`5;O{oo}~$d)?|SKUU)Yy;i#xrPxS<0x~Q8!T^u`AG>-&6-T!KuQaQOkuo((h9BVH5 zSFl3>|LGkxA}%>rXHG~ruMuI}V-P7mc^A@OVNzCrO36>?-Zw3T#$%cQ$7GAvUK1pC z^_R9SY0RsD%7rbQeBQIPsIk4I!BcVwY+tq=ucg5N5dcSBTe}cCZ8NS@gGsH5288GbbU27L}OxaJzNXx3N$Uf zcH*T{&ZaBqPdV+)C1u%FvCyX2EX$GNs`*?k=q^1C$7rqBF*UEE>-1=&jnS_kY(?`% zxgI|o4UgHXQaDiMY7)a~h9eaPqx_?wjtoJE3)VUk`e=TX>^0e)6=|+7qA9nI4~H@& z;vLGzz*B4|#_33)hdy%=0;*bcQZLUX;7A8UK+4WfL#RD1wUq1C;krDh0l{k+mk*nk zB!14g`(5{+DdtGVIYt_d6~{H&RI6GxjLRX zw!O8QUuc@2+-TsT3(2VKA?Y?AMlY|(e4MlL$5=zK4K{Eaot*31|A}CMxE|zwTr&IeJts&=$g!L50(;Abv`pUIFrqcr_$`XQd(vq9Q z4H8{d#L*qG1F*I|ZRHX=xfXLN<=(v&YiR;ZJr5_E%4+{HL4xK8jQ)7=5mOvy)Cq+6 zgw7m2DcB)|gg`6N*W9C>HvEi>c{}u2oRd!I!8`?=kA`(uP8b%8^u@Kv=A_G5i%AIk zva_&MU%&ba^C;vr5C~^;lFGbVHtBPdCg=uKxtLGRdC;2iDekUVK0J{>>Bxx({02ul zO{2Leocz)EwHzL3%6^`N8-vQif*p2tUv-s-{9HWCqQa&JatW~9Q&mKxwunxsx@Yef1QWaPTai-vV@elDDi`b;<+IcsE&PWb3@K^E(IhcAqsHM zs@PTf`{-gIA#`y{I%&);_Qt8#1AVzz!K2?nHd!*Br@RGsIvm-U(53=JWbclN33X~k z#-5zy>C}tNa7>NqitgK*XB*Wye>!7)aLe(O!|tb!1R0NqI8sy*CpCtqc4 z!p+c(gwAKQLDEua<5x~=6h)R^Y0XDHtvGT=n?BC(e)QdR;HE#QAtbZXS0A(WzFrG3 zY|NlporrgqwU&p8!dYatN=&IcKqDVq=2t`9-qE8jX-_s!heRLNj}(Ou$JqU9dV}v3 z-3BlC&1e?0kW{d~Iibt#J!mZiN3Zx_zwCpgOdg?*(d9-ErJx3+;?Sp(e|_4~XW@_z z1CloXux&^QNddb144+?LaqE8`4~_|Yz)P{fABklIo@^rWlznUt2Q5wA0K6Ub8-=>H z0I-z=J5+8>o{e8;&oQ~k8ZjUtv4GlnI+-@LEQ6DMN(O@%^ z71wz_3tYDFeBXa=0A4Gy@tt+X4vg-dvb~$vCjo2p*P$uKfk5w<{ZXd0uO0;Eq^2-; zcX#WiU_biGvvZ~4GKWuBq(-i%fFp79U?TUGT60A4p8j51;B^78T=43(WLA7pp(Q-oM|;Mv|z zv%PJRXW7{1z5a6zS+SCSEem#Z9V8xq9seh_U;h2b|37XZ{eSlf(8oO~!ZYQ0?xrCj z_&a6$HSOH~ZYhPXv$w6&+xpLDS_*3q%1`Qc|1+PNCH(vo`|8#H4Ey`yuF$fDj{BV7 zKeJ{SX0Crww|XuvX+N4aw%xAUot_{iGLP6*Ah8qi*Y^N>v@uhfufVXny4f(75r;ge z3H#-FppW@?gaoLU<4CT9ElY_{P)0?fSP1b{3>TVEV74w{C2wX$gF5 zhuJ@aJ!|VNx;eZD!ycL%j!X>QZTiU4>|?Du=3joBFNllv?ivHyKKaJ{5o4jsAz zxZmvT{ny|AQi(xtyk!$vA8?x#(Zv1k;m-OBoYDC^|N6TcyDD>M&)b&YztT*1r}|Ag z$izsn)c^ZU@@eDKMth8v|1}nrCiHTT@qfS9G+Ah3O`)jkdHZmM$o|L99yLbQB?b`3hn53%l{A=8zkW-P zj}Mo(-0?44IRAbZ;=iZ!uX`@>gx>wQ02&2^yaRD$bVh<3G&8#j=XjS@DKlt?X0ctB@P5+cu)(^ujBr;Z^rW8$91%SbKsjNNec$yN6Zmi{b0q^bVTN7v3T%6zeDy!CBhPuAG) zL<87k(Vb`GjhBj8!~Sbzdh7NtncW^c2^v0|{#lLJ{#c}zMoH}b@9(0YYWBq~CBKpo z2@L)=z?zlu@6(sv`{8h9rjl=z6*Q!F~GRFk{DGDEqI61s*df0)w0?>`v}E^UCyKdSU~bYP){N`pwOb z>&3@3?f#iMm6XK%S%Gzn1;!>;Pt{YQZqie+swThF_MZ3b$D<-_=dJ(kk2?2htsF3u zS3nzxgbewbtY&VtS8v-s+q$=!`0&jmmKE)P=HlJQmIvxCMn-s;H+jT4-G>%-dy0`9 zVXJ<>{^UPTU!9FH%Ms7JH+w_%wZR$rq(-kU4984^1xzjLzaRb?dPCy5LiV{P>S@(! zY3kF4jH|-R?YsGB{%d^P&nE6yV$|8Z+Qg2(n)FMMaY!*QzCb_3|4-z}`Z_gP*!|qB zK3lxO>&x?db1<7}`|gAaqHy~$u;!wGCoc9-y3iM$KU_t z!eUuyhPeE*eYVwZ1v}yA{;}Xf(e1WpMrQI!dbaZJ|NT+6==NuMMnhE~*`I5N` z1PJ=th+MF!1^+ce1O3-jjQjM#g_3R;{IPh5zvTBbXMOdX+>H?kb}w-I*wS2G(lk!q zW1R5&~?|M?E&LG=zsPgIe$@i zD~{qk>0tVz6`^0G$#edneMsJ37G59F&%%_S&`|jHvhwQvC;xaVxLXz`#Z1$w?g@t~bqW*AZYB@nLnKEkx6^&%>tAm5%nZ7kpF)wI&T44R4*(?b_O z&Fqm0)Orb^MX2>$KqEYK81xBt1AH*!E7;nj>iW9}s1$%x8NG(8(c7S5(Fmx_t|p!_ zxS~p_GNr4QHqnPM{bfx}>ULnei{C}&G>Al|z6DUC>+ zABNgsZ-WZ&bXf>!;IC*0D!W9e-FLaJGfX-RNcSWg8leqBnkb&$`t8Y5Wcm_>Sf)Vm z{0u1mIxgCBaBw*P!tU}0n&$mx8050?pVK~dKr37^wE+rUBLMEXmnF#eZ$sU9Ztm{j z9FX#(;nyA+Kq+rX4aBPk+wuN=qkXIx@uTYly~g#idAN@n(AW#?P4#XLQu%&=S2qCN z6a5EoJT9&-%*#97k*NXU!^qD&4Z3!NhL13D<~k7A3_Wd+x!)5bmhl|u8!D-}h*=JGSLhdqi}r1U-in(fhKhbgozRVK}8X%?DnaR?2F9Emh z?N_Y_89MkpyRh&aP~m7?vGJ@%&^MuW!{xWT4n4CS1CURb{0|vx4C;f~9*EKn29J{( z)&zj14pRpkF)TwYT7WXx0Kxz-2s6>KLn1IM1*8iIP+E69k@utH}$-wyfP z&_*W%<@V~Sr6>yMjJpjKTkXx^U?YLMf@ObS`)pa0NCc+w390{!o&ml#HU z@s)ni?EoG3$NVxbj$QsL*Mfp?ff@>4)HY!s(KQG3^#)K^eY2OBmm#DWuLoRbrM|0& z$5qG>A-`8YN`1#FGS|P@n@S{bk1Oh&FZ%X~N2?Gh&uZo>0GCqn385+*$B!ESX97Kd-HFf9Kz^oYcwr*7XPf z$Lk>VNmMbhnXc<}+l3GmSHgY<8%q=%ibC%YeW=-Yo&m`I3@@;^NL)DV76|HKspNsi zchM%WCBoQG##DPsK$tq{IJZZ30{OT8m?G5i?w${A%*0E?+zjF@5SJ`dGM4|7Y+eY2 zCAAm=-pRh)@zM~X)%Qq5`GYGNeAkx&dIeX-YrU1-xuCpr!JC6+yCrJ4r{5j~=i$Z^ zC3Z~}8|ehXm94_Eld;Gn7GUtl4C3#lr1hYQ6)jO{gMz@YYE33sjngWU{L^sw)Hu ze1DIXOM224AQ&!ef_9AnMqgQYQoPD+!Gvwc%YY9Yie_?)RLFfdXMiB}5;Ri{5%>no z4O11Q1pU~+;C`<>@=bL+W2cbl{pLmGo%|g_yJpHbr1At`1AoWW^XgpB=P~3)ZQ4?{ z6P_OImGo|!|C-3j*tZ`~7$Zc%J`8DKvw_UH#n*~W=YH)n13c+vsNuB-OnfrXz?3~z zonWkxL+t4Fe&qV*3>7~&EE!|huPIYD@_%vl9ne(&|Nj~^kouMqMSYaY7MEuQ2x}$`@Zk-dOgSE z`FK3uh5YUCe{Z_j ztFLS~zESF(jHwQKq3DG2U%G$cW3$+6KT}=^9JXr#Bjo3m;7(YZNl8gzMZgTRKQ9G5 z;-kw{4yVI4021+VH33?38IFi`lRIkRY4O;cFN zcXpTm!Ds`HtE^vi zD8H9NX#*}eo%YdRfrfp6jE4c&iOWc-pPP-LzQTEiq%NqA8kg6JPH=JTpa}o0zF_!! z8~s4)U2d}6H>M!PeC07jB4EA}?FzDkhc6M@b8fzKm)?Kxjd1})UC+%*d0^O(F5wDm zz~AZrb@=xi-s}QmI$&;kzL% zM_zuj3^k{31aJua$2qe-fg^?W`^;oWKPmx)a8p#sTfu~P(>vsD2e`Yjz9$>u=aSso zR7#(UJ%AAFa!2|{o-I+&{>s%xrlve*TpzRbqh3~>CsB$gTWbj zK;+cX8fo^7V~7SV77S3A`7m{W*bre?bECHvebrKdFCU)aaAj(nA8BX@c{++QY_vIL&^<*52s3&(h{>;S zOhUwENsoL`PbK-SO-umC9Sw-V()mAku!^t{F&6bXguQ2)m&Lu~hU!ROFXRa^wY6Or ztxaaPLp52yP4Gz%H66LRtB^jZhUrEC%9P8~v~c z(+s1yZ0s2D_n82EE)%G*t``t5BELuqj4dv{;iJeJ1~3Ywj(7ZEv^g7zF9KhO?3k_EG%Tju?cF^ zFPvGoHzj-SL^-@0gi2c>r;U|4cA;4fv$dO$TufR9XgN`$aj+O@VkG3-Q%Z zfW4e&`==4$#wEyArhUg|U$7ZAdlt0a-EdxM$7nU|)O9|tb|`rb)PT=T)&zFyKyDU= z4NBckq)kaX%&+^vkp&9Vo2sg>e1!VfB;dSszOZaLUGnoTT{3q>CU4kraft}VRQnwR>KZV_<4LwC;-RxQJoS>@3bWM&IjP@*AbjGqpEw1jbYs6@|u`DEvL1) z#)8<$_4qE{I4a98tp-yC6~SYx>#CjNtmFEtO&Hq z7P)-ZOuTfsnSOWdFql<{-u(Nd!4JBvDv{S>mfXhD8-hVG&{#_X-vVEHmua66?89#U z=`VP3nRE4+<1494mUR7Gk(0QP`yG!k^+OC{Bb@lqjcj{r!XE5N)_)!iM@FRox9YOM z!#LxjG@;TYyDxDYomt5Vob@pH@l}K7WFvy#TZ0{w+XBw*I8Sr#pnNA2BajtCts^Mk zhAJt>T$FIXE(~=`8PRY-YCfMpOrKo5ZHt!ix;5k8oI?@Kpzh>-{Aca3+>}MwI@;^_ zo4s+UN*Mxp-+5hx^{`ov>>?M=+k2!IjVlKsu!yh3j?$fa^ADidvWHE+2>-qJKy^2X zOx4(f=R0sm8Ic%-H!iKq!1Pg*jd}oxu(~kj$r!_526>>NG7O;>0q`#)wE?lN7-VzI z1wBm0+)xb`Qk)TiWLpbzoh13!eE%>f;&-l+5*p%sj zd2`t^&~7ZWK}ob2kWnz#qxhiIi~&3yF(Sx?+RzL>pX381coWFMHGP?tuYv7g3SGDk zzSabFmpZ_ijN|!pWLX1LwN*53;}Oa{Yq~Oke^oe^c{k-=pK_M7nm^aCq#AmVP2L2E zdfz$^RPDic4oiSVXJB$9HA@pTxxY92&&1>#(oljc~8 zzn`5$j)J!;@bjmWX zE_-hkZ-m?nlmGTE6-4+705!57r(jpUB51m17 zL0P{(TA*kYw-x{ScS-G20onIR=E)62dbz#T3aJ4w-)nlx|WZ0 zUHhp2C<}616n^*P!&D^ze>B+SX}U*?LuPd@eS1V3Pxl=(y;6p@O7UH~;FYpB268u= z0J0ZNs3dC#yt??Hzlb->d@ZSSDcp^^k-2M4E+5sj502>3C3ouz>jEG#*SONd%e!k8 zn`vdg^`bi5DAA{)bE(8_l}L{rSP3l6AT^VG)j%J7P2=XH@NHtM<>LPT7}$rFw1FOA zY8|pJWmZNE0raUkA!9#j3~GE0EcJ@v*Pcu&0-K5QhYr)z)BQ8s&U%)c13#2xT9UT|#(R*FN0WYUs;2-Q zZAkD#$ZS4j%h;2AUzGLnM>a({=Cw~8rF$8ZfSn@>bmiM{mALhnT9x{1mvFBjA6Cc^ ztMQ>SFT7>jCygUGhC(gj`YS2h^Qr^OBHV?9$-q z=;&12f>+~V>izl)*gIy;iBcl=$^1*8e3xFIg`}(ycw?8oUb8|1zvJ7}MFK&hjY3$x zOnl$cqT63!FZw65R566FH$1cGlkj{1I&LU`yAT5KAkgQc`+J>ntcq{f-nn&ssK~Ay zq>K_KhUl|VTm)`b495*mV5DVzISJH5Qe4y$z`LYD?p{W?$=A<>`MpRSgk$O7AS0Jd zP=N|o47O!z6y5LuyW1>5*3+?PkV{MBkf;oRPxowyU3;6Inwv}Wi-Stf@wGMJ3@6}~ zh;%GF3$7<+z0Z-9O`;y<-Kkt`G|~fn42$S0ag&gh1m`~(xjI|y@nz2+P2w6`8#6Tq z8PQZE(^Q#hk%hU+R@g~#KG<;aoCMdZLDV#yM4Vpst)xFZ%iPAwHW(MAzWcQ!K#v?k zk)bcP;T=#%M=k-Trr?jmtZ?~2MaUKy)TF+U@i9c4*+#{3SovrC0YlnG$be_HR<-T! zQ}?|PGgb0`Z~h1QMiyf74qD{fhK1B{eJ@)DO0lFc>NBwiz|2oSr3($kFL9d~g`?5T z0qka;z1w@!b?!|uCb5`B2&Utr z9veD10o zI^`b!2+$onyff2j-Op};ary7l;rB^b?%JRFH2)eg37Q|xM2Eub25<1jV&S4H+$y?4 zpMXP3py7%P&Bpgd!`K2@k6|uzvI? z{b30E@5pxY>i4GR_IQ8tI7}x(L`?{Zn38O*B6p3U&;Pp+npojl+Twg+8r#FXMX4r} zi@2e!4;gdhunp!gOARSF0lM~Nqi7yeJlsds$G99bUs7zV5h8kHU<8;R3d(*LZl3BX z0(Gd~zki5D2g=3CiF8Kkm+93~F zO#si-eK3TI7VilSvxLW=Ik{5ggFX%AR4)KS0UFq7^6~)AZthHf6T0ibrBl#cKpm36 z6s7n=LK+!S$&SBcrFsusO>Dk^SN|)cs6zToX+PiDe9~-PG^!_I^gSz_^=qvnD}sQ{ z%+18av?tztpZt)+JvLWEW7*xP*!D(g72?839v6$*%7-=xM~CS9o3ACmHF=c&+L>R4e+!8F z8dwY1t63qdN+T|E7B)EnO2Whg5Fm4OIAjTTTs#@w^XzC|!2g zpxH-9i}lz!@gKH&$Mzg@OfvHlZ_y3gu>XR3jY7}jyp34$CJtj+Yh5s`EiNj7w(#x# z-1j8!+`wG8C$OM|9&C{c4g^gp;_z9K3tov4ezf!+e_l6)@Vz4zcnD_L1P-iq#+k3< z@uJ2e%@9cy_P}>cc5qvHFUfruvZ$h@L*iY*PlR_x^86|S2Qq9&LKqAzrp$%1E5`tV zd;6nO5M0lQx0dI^QEYlAF36;)e~#R$G&k~|;6@%WPPLnVTfGC!FdfnP(20+sOLfYJ zS~m{)M0Y#3quVi2Qd$H%;E|{Sq=1?b05OB+22$YDMzOYtkZRlyNJa+X8k@!g;Ci~) zh3m!9l;YygN0AxOezq^JKRmP}T_`&(?er!THK5r5zi}`}&9R8|4$CrNvv$*-T2vDo zctGZSnEsziFLgiL*lv8aRJayW+sETkPsctjR83k^a@rj`M#EW@|2pYaQwJh0c zj<9_iau;#oP*6xow&4J9xlDl^QY8-l7sn3y(9j^KT-FTROyhU=oR{1sEXf!DG_tr4 z^@~Dh{kbjhL9fl*OpCCw@A~_h4Kfym(3{>(22QmkI@tG8Amj~$sVkUPcRCbJNKUjQ zvCS-O)<}ix)J(5W!W$sZUU0(DMo#i{?5kb`B19}0BS{68AAtVaW`$2tAwV6P7oK=N zQjH@Wv|M%sc-D*3Rj87BjQ;@Yq_?e$JS$au+8{(i@W?XITV8_DG0x}i6~KP89Rks& zs8<9GV7GT$NI$+y0j?Eo06&eli~rk=J@_t)=(bO63&4+-EV(rg2^1FiDppwdt+nLO zYAU|9b~G-Y>|wa(&xPlcgt2tjl42wQ^4q!|;b)d`$?v+`Bi2y|ttm zP*F2WN=j&ull>;7I^Ivc1z@cS;2eA%NZ&*%LIG@fCm=maN1<$T&>zC6Ae5!23z~lx zX~4GW~(QcOiO#$fMz-$}g`b&y`_RF<7ksJhO~yGCG6(d76JIoV)ci#_>C03kj|R!RD*(07R1h$7l|w*8lPunicv{^gc1NC2 z42VP5Djdr+WT+YWShmgibd<9F$mMrZ?|x*^I+X`*EzZh9AQXTa>j(IDN&^h`Cg)x) zEiI#!QAoB5ZBFRL3q|_rd*^`*2_G5^WF~Ton$)4`Z=3l&(6tTtDWFr>U6C|{EOAiuYYS?HY*VW(NdCPj=h>S5P6p;_}Do<3sZ zR5h2=mz{{yS5Sv$_zwsZ*ZXIic3Sy5gIPP44M^I1&H|mZ!CNr%E%w`7n_9c~>JYpE zIY!MVDVzlJ@U!_;X}>q6k~v#{r~a4UkZJo+qc5FNb(5oEd9v&E!BT5I?>^hNF-j>W zDBP#z`5u64aT@pnxS$>cE3z&k`#{ggSGOgu=IgU^^mNozoIm4jb(EcLeL~iN$2hV` zSA!5Ev~KW2q#2Ar+LS^Vv_jXPIs0tCDFa}dZAXy~k&uh1b=VE4@8T5vY>@B8#;a zX^`6uvt>U3h9|(xtyzUxC9%sQ_+$*!6JeAONS|3GLyKJS2>TF=W&iDpr&aoLd%$}# zY?tDocaOl?{$x?}gIDjKHOA-p-M#U7S$aJrn14TfBy1zGyG99Nshy3mzwscDve4J# zlZg=G(G0WXRvY4SydGxB1KwrODPE#|uJWt<#M{kqtwimCd!LM@4;4=6FzYto@boRy z+Kq$S0IS$!@O~B(k4*qtr>x;g)2fHg@85p&2L@3OTGqHNU|8X!W)^jjRo6>MH+ua1 z!aDDB_Sni0mBROq$@rIlW5)|(HVYhKm&%3bI?!((>SRuu7viUcUgN@#(^Y}c3t8Qt{>pLMim{90OmBkpM}Ne*JPA|Q}7@@aAMQM)3vw!$y zfp=mXu^IccEZYGOij^-H#oZl*#}s4+N&yJMy+s#cq89!hn%rf8JXEV^QgijtF9g#3 z`KR;5{?Y`=uiz}wa)+DGg>ixJ9tDBV80q7einqv7VyA7pX>F%lme)jUwvBEQjEkux z4G&mxCj4EeVwMwj5{rPL(Dp|ui4m`#4gVag)6OAOvq%$&U1g<@Ql6hk0m!DU&R(vkoV;9Vp^s>z;>54GE)ZfZ>so zhQ|;}#-yI?gI^x}Q@m82>a|Y{;94)u%M=>X@}|0`0$Umrz-(d){`)Ko!6n>EwOd?k zn}%Dottf6}-uq~=e_|GE@iRaQi{6c{8d7Np@%gDFBOIL9i)G?*Fd zt-%<*yGm{OfB)BlT&#|o__+uTjZTT>bt7a^8oFv1LaQtQ-^QwDptz#B_Tlq#=Bh?# z#+akLkne_7Mdq>Da-$SKslayKXsPN$VyKE!{R2UY?p}(MN4M-k zMAa*V>LAx>0Hx5b(k8Q>X5R4z*Hg^Xk83vjO+2!BC5y_PMR0o`ivgVQ?Dy|1I@y`@jUsR8_~h!)R(u9B0BY4nJ% zDel6R8(O{_C&R3&KN5D*x|0*nx9r?!=JYKw=5-K$Px2%kR}oF6^6DalB^H0Y=G+Gm<~@P0XI1rnt(Mf= zVU{%q>{9J+^VDoE9$gA)^<-RDjOW40*ey2}iMfJTN?eEJ1^LU-+|No~Og8u6M-__r z2&JAG1y%{fpey#;f%>BJY-@iz(@9(!ztiwwhTm>{{bOQ?vMigNk@xVRLa(MyilRrv z>-FL>CcJ*f^;A2@cqMXqObKncei5}4`V@7Ez)lEW1Z-7bn?ITxmH^B}%f%3Px8c$Q zkADtXZjw~CMuLe6vRwGrkrM$}^*wkG%6;{Sk+4Se7vq8wg`Egu*rGs}ISg(LCd02U z*-yoNLpMM4{=4IqQ*YU38TzcsA&jHjbzxrj{WYyb7|E0kF?kN;_@we{o*XnR zWknpa6X?=q_pb0eUpy)SM`0gs{l)${?QnL~vp1p@=kuL)J99IO(k8dg8H^5CV;j#o z(TcJTPXgzv;gCg?mg@xH8+EQ6aKoBP06BE?FFjT{)!D%cJKih1#);zuzSSRUN$V+s z@-recWkWgOwKInkCM9(db(cuSpsBTGqXNF+n(Du+?lCVNup^D-IkvH@$1P2}bfO(` z3BK|?r#OCwU&A!Q}7FRBB{w4z))6aFf?q9iH=Qem)pxqIvrEzXb zN;b@C%4a3$Jz!@bl@X??b}ou4ThSmkqK5~Y5}o?A5z7Ji{ne{NM(wX+a#7len%uEL z8unxM?Rt-UV&JTSG$4uWKQ;&pb2t*ElH|@86M5O zT3X1x6Tx1h(`ZsGBkwQb*lof-fm>O#dhN&Ls%wylZgi=TMCgqhjGL!l{Q1THjoP*sigc>44%=#ZsE3wS z^&~s8w=ZF9J)hn;J~n15FC|}g-*;w{kF~9q1Zd*`4n0;nW=d)wjmq8+&qX;>Ie87A z-3~PiUC1s@v%5q%I{5{EPd;D(FqVE^7RP&#)a1Dx-@kx?xmCJ}IpZZyM``pG1TTHRCEZ&4c#2)?N5rEH{*$bi42?mK4`atY z^lSaiRu+9o7?$XkD{(WiYuINgdZ|8)Ea36+8;ve>}Tmx-Jo?c zWpM6hgC(8+0u*;pBIw)gmRo!@KSe78NS(J9UN zO?NjbtrLD(gWMmHKd#q}HDd)!!Di8Iyh+?OKT#hHwzT%(@wQ2m<7%jZ*WY?0jC*(E z%|-tV_(DGf;oq1~P)?g1yL|*n*KUusXHUFk{mJy&w2^fB`uvHq-q8t0S%(Cl&6kh{ zq0f>&U+uxUx@WU}IUQJ8ZGT`QD(fThq^rsZAxZcm0tApN${*u8^f9eDU%P!vwD(LG zqh#)3jf@Uvi}2F*^PIE@wkEDf@B6Fems!nOubI1m&bsBVv?skdZL;+&CqBqn@8egN z7a<#8R;sszDnPx}(bs_XTg*F#K}*KNd*(T-G0tI@dal&!-mjCKtZAm)A~OYYDF|lr?vlrs64cVM>1!6|bSjQ;*b#j3A|j+fnb0$6^XB z?OpoJEQZabi)=K<^;)uDl3^UUwJ$s~b;La9sW`V5ZE+1#DW|!Fj+ny^oDR9ttZqbN zjFQ)%>1k9wzxI0y*?4Ld11`rHx9!SF3CZ-71lkU!mdq zsHHu3Zc|W2ZLA2fHqjZy6QLV{@3%elpsNN;7}QDZ#&`}HVi=j4{f-Y8z~TeEM*;7_ z4ur5MfzDW>U(=U5)Ovj8F2uKQ7M$y`yB70Iu7iRCWWGI;;Q;FFLINduDq8xu35f$7hU^Yi^u1aMjRChWmBic`e zZX~`cG9^gP=S#U-Yfml>CXWhpVj}$^+PDP#@?UvXsIE{hCtgKEnQR`hk*H9Rr6Xh* zWEPttKHZ>>B?uwprPY@mq7TRBvxq|NH-n47%scCpT^x&_g2Al(X=mxSJ zBb|F|@ZuS&@}n3g)UX*3B^`fU^(~q9)Yo`)*jbtt!DX!Hqg`=Rs8`{fE<03Duo6o8 zg7}>ejPBaw@-E`Be?F?r}6LsQuTNseks-+cbW`gE-EMBgUy~mN&Hz!(p8-kAEy(WB|krGS%K@%FMJ~FHYv0S%gJ( z2F7vlSmOGZ$pj-OUV5tkKaV1&v);~gROI;D4XboS*-_j#N1So7xAKfT5~{)bymJS1 zWz+d=nrqoYH`kdFcxiP^6-wm za3N$A&s~a(G0!dpU{^o~12upBJ7L+TNrh3T^;ZS{uEAhaWe4$d9Qm_T((eza1mPoF zbjkEcf2#5PE)a`P4q~me^P(dC$pAy#&dBL5j<*p4D~08< zQO_R=?-H8_tZTnV=J)kJKH*+92$L=XrPPPM)7XR@);8m7i0=$3Tkt6U-mH+3_@WNf~wJEP3 z)fB^7pH>IGN8$L7-NJXAmTlH#wUjg^#m*F5ONo^(xTQ>9TXVosTqutugt3j(Z=fKr z=UP6dP7GHX`R5UJF4Y5c_~F^=EwZaJqU`IdM|omb?=Vbh5n=hU zyO?@ZZ_gP`cD@J!;wzZ@2^__5G~$UOO#j3w@-2jNG`QtyS@l79 zc^d<;@D<+#-~(bx{j$3v-YFsM!E8+QD%xp8#aj}}V1I;3qE`^@FBfp&yZ=#A@C99x z(GqZ0&8QCZIwXng4#*|a%jLl-#}f)bW;6fscOmGKcjJ!=BV&z&ZQ(t(`eU$sNrR;|6Umf>$-*={-%Td`hb8fItoFdp83>L5c<|5fLxdiv0=SGkmQ03QDI?;@ z4Qiw$sg#>QjqvGEH~2YSm}l!`hbiBb#1U3EOYjWM{#ki|p&em|<8%vSjh2EFH(R88 z{G~)dKQ{TOx|kfgFDpiiyG!)SE<~oPP#)S*Lnrsd#$0^v^t6@gwVl2;Y`-hHw0csoxWZT-ttSQk&>U{j7Ie)x?IIIzU?4b9%aH z`m4l4){+Z{U3MarTXdtlE*|^OZO>n9tm-^7{F+AF)bYdZ?>=+w2|GG0VL-+c8gnO_ zYGQ0G*Z;ffzMkFy90)eqiu#Cmtz`TLCBA|hXX{C20I&#jkbwk^gM(Z5>Zqg*?0S2? zj=X5taXtUjsTayv5g)m5A!3nAf6+Cl*g3fxfY$=~ird7vA^;D3O=zD&7Mq!{GP~f* z@?{qZ(feX(uAM*``at zlnD_^2-s?c@OwE|1r>o9mInU(Tw|aZdDW{6<3lUB->##M#_ly@wfWfTtCREPq2A*L zJ%KK^x>>&!Al5DHYvpw7xikNkHoB`+NAazPDYzi-iCq(CE6~Z0H&w1EBMgaYu*NtE z#}>a*klW>c=XNF1Ra^7|lK-CQH=@;Fp%dB|wn$C+NtR3pOGpR;CR>_EYyki_1^L ze7q^HOSIy&?9$)v5XIwqli8r<1(9!zZ4__LKPq^947&vP?CF zdUeSc1=l?_qff|&B(|8J`jZ?H6_f96)PpRx?v4!s#a2cc%zxOdI0P1YGK!)eT7i6X z2Tk&G0`XPyq6o9L(33-c8tt1pdHkytOxrSMASR~TrBF}{bv>3sHqTIp+a6&G&Z;si zY9Q zFDNpS11ch00M~h`JeuKK+M6+&GV^qZv+$5lCa~HEt;k?oOw-$yN*cBzxpryj*sKJY z?v9^qqrL7e9u3_%48V#%HUS)I#>NX=_z#kanwq6@g>#F{Fef7!$L$Rjg`k zrq{FjJ$X$0!*IDur(U3<7qeutdD-(SK1yRt?t?Wop|`N*i*B5>*DX$=k`!s_lclqr z6U(KFrt@ne^ocE6q9>1pZT_m#)5T{o_?ttUYvS{>Q6!Qq*r}xC#D*EO7y5bjT8cjF z%s#A|`$7HvXPywME2fb9l4JQ8C^-%1*C1Hgi9V=25nhvg@>^Gmx!PGUDuw`k*mT(< zt+-3Fz1_7mIR>L;tFCO-lyegPQ_@}ZVw&oRw<)ybtYU+JW^lGB9l$a6wu-eJ-+EM z8@eNI?jUE!u78RVkdIqCr01QM_@D+mk-pq~8JRDH)v5*2k_mrODzT4!p7Q{x6Tf}4 zVN%dtOz^eA3e5QPM-Hep$6en0Z^d`S;@PWr*Scy+ z?}G3FN4|xdl*T12CCCdg^L@4|${NxW>anYSB#~#~P^Xd~oNNU9N^*imS*}~YgS3j? zV;E3bST{G4NOvpx%$wAf*2bKo!b*I+M}org5=nQ^37A!sfm(o4{BsFC9_=_`1X|p{ zJ=D#>N`KJ>XhO;pgmrWjMu)Tf&~q}_Hjk*(S`tY32V&VZ1@=1;2xFlet{ad2{;Yi_ zxQ34pr(#LTE{XKZStXg^-GqnSDEB8<0P%i7$l( zbw>Q{VV*!Lu3t)rKHFK-wo3=y$5aA&MU3Ht+x#o%%V6slhhfihr-o`t*Q}OmzU$*- zUhM}eg>l8-%f(!YP~x6(<5F49Xz`ISCINCS{LSD}B9y7|udTEl?9`h3y^Re(n9jv! zW*xRGmBw+pT5IvIEu81)&!ux{sUn)a zL?7nBU1joX!0Y4+S)z8nYRLe(JtacyS8ji>2hZX6SxXXHk6I#q!u>yfe1CzKL29M6 zz$%?)d)nI%Bx=nZt>(P`It~Bw{0{Fy`T!s|8zoX?W!jvZdu80+x~un47D|#LO^X|H z-1?QDX_VypPK&T*%xX@0mun+H?r18 zO{{>yM*sl(F)~rt{d0RLGn>t~h_-P-A*7?ECU(q>!I$alEG zv5Td0S~BTn_@F11)=T;o+bU@l?FY0i?F2<%f?>%u>+D2idoh3YZDG@*G^8ya`<*&p zLJs0ym(nFh_I&;Ym$Tqq9t(^lMB<1+{9B8!94hLr>ePtJu6~t9)vvVe$OQR1dF%eN zURI~(@xkXl{q^qTuuUXLTRl`@;IUX9A*J8?gz@F539ws-J~&GEMOLv~PCvUV8uote zFRHGgT&+hVHZ5(x#7PJfM^dL<^XU{THaBK=^22uwhK6N%1Tfzo07egGwxlLB4qw0| z@^|)FRmBA4QREGXLzf9gn5Y(0HvVPGrVSRvvh!a3U>t`@8GM_HNp8AerLvZ5Y-XZN z9%{(8#nm$d8tTJ;_Sd~(Ge7bF5iZW_1ZrLA1tgSxLtI>K6>Pm?%WFmX_s)a)-YdJ$ zD;Iesve8rE3enqFxXft^(D}b9iU~T*^I*zeI4ox0gHUT%YoHeq2=DV-Xx{*(qFOunJ`mZ69(i~8=dEQRr`QULFXZ2P9-P+Rm!N2ugUZqS?3F$m?l*HZ za0Ra$=35dUd7#(5sIT?48NFc_@8rJe@o^kLOo1elg>&}B&*M}<^U(&jd0hcO)`f?L zxy&lMjM2WE*sw0!wM>A-{^g{_@>oTRdTFDX%_Owt2gy8z>mhn{r zy2pP+XUy++N(8{jzOqJbh&aZ{%1ciW;8?Yx2mM|xz@oeExu?qx z1`ZC(hTSgUvX*K|)lAr@*%Ra3uq+cZz?}unMxuj&{GQac``pnYf zkA(^hqMQ#|y}+GW1L`i+CH0F-`5se*Mw;7-t7HS(YJD;fa@7Xn0{L!Nx zZL!us)UnAWERJHlG_pYwsM`mHh(Ay3k&Ql@V+O(S;KtefeeUD)?U)aY`xX`uq_aXa`aHr8DfK+Tv`Gj$sfA8v&PhYcQ!vH>J7B^h> z^<8CqpB}y{2zhq;S@$dTBfD<#oKt5oKXbw03Yn4zhA73uFgWaz)~(!ly=t~9fe%Wu z7Nj0%zX1mqFd%c=VqKtqzfSTpbq5^D&ZR<21FmWay&Or}4)r)6uw_ne-!80)GNQ4; ze!sol!4h1jAP@##_z*Cw;84>?CHahe1VlI1tWHR|i6|Xxp~L_@)_^N?@zL+tJUL(q z&QjMB;$sj}rN`WDkCfoREeEqA^0($5LD0t<*HQJ+wpuozN5xwmT7ibd2td3N5I07E z-I}7bjS=WBb0fXSoPK=4X%Od@q$LU43@Bnqn|{h3EadSb-sUI&3$NV|7;h~4|0ZW1p3)e(f`|i7C~L<8Vjmh zt5k;v0|3O(I@VWwYV&J?7pg8{6!180G&RR6QFN&Gmw)`S!&F!oF?v<;BM;8bp{1hr zm^e06$G-ml%$=1fX&-L@Ha51iv&j{;y5|CV2UJ=&`7|u(36+gbnaO~DeU{|m? z`um1QNEa}+jGZF0<;5qO(g@jY23s3S266mymG@27zUI%0mWSO!Td4wL4LqYzZl+l< zUjSYq9%glmZhDZ3oE1DB*IT*NwVtdEs`Q&t`AP%c(e^KZn$ATi003C@Uz@6Yx%(pU zj9TN&0CrD#8cVJ%nC~W@Mh5g$4S~Hk**6v|vGvKtRy6)n z6L9QlB}Cbc+rx>{Jz)ARg}$OEv-(`Rtc%|DYe(t#$>qDH@-MX`n>y_?oD|X{l@Y)O{5MG21@|`^1=0o3AAHPN86XUA1@tw!C z_XIyxzVW425qSyS#Bo8OR@9_~Sf(-KTYB^RXCJP{nn~>ojWG`eW0$k6qqme4Z!69N+z@EStayTTgkp@Wyf6)v za^gJQ)I_A?sCJU(a3>CmAjv0J2l`Xx(j zU_}!jCZZ|YQsS}&tc2Dqk{4}wZ)s>crokq(F1n8;c5vE|(ct7Gz5t7%_+Rz*19aA| z(>zX&p^J_TO1H966aO<=vbyiw`8=?>oGIp7b~bN;&zm{dH$cPjT{*&IIK_Q|m3Fax zFTAI&G(7ISqt=5TWEi3Fj$_tN z{~K5u)t-Le`5`B5Xmj-Cn1*(_m-z!F_O;awx%b{fxVf`NM)FMBje8|lRF$JQhchaM z+mx&AV+U8}$J%;^q722kwC?@*R7JrrT?M`a3dt9K%^SOKmUf-vfx|v|OEH|9nYO(M zdeA11MDDwY%g>b0B}Qx_%Lqm#Mxh6<&W|sOw>AT=AiKT%Q6USk%Y>tX_>nU1gRM99 zpQoW+-i;-N{V$@aha{IlmA)CIK-#tUz~2y2d|xlh&1>UCBO`+?s9S4~%gl&8FYp)1 z&l@#;JQ&2Uvh_K+Cfh%0SaU?w8E1;(7;s9_Ug;fA`Xr`-26AO*-Cb$TSR(C006%W~;Ia|dG&ooh zX$_j<^xh{co?u1vl*%=`8Tmx$IC{A!ed6lhYbv0pUiA61p^ka?AI$bmrl$b-htjD@ z$`>vv^}@vfyhN<>fmepM<(gs0+%AX1bsxvh>0VPtOo1oxNa#vUt>U`+_3M$@$22>I z{TCLJ{^v9=eoJKtp4xGKaP~wdoqNab@ISk<7d1U!dk&dsN#tTMXD;u1MsijvFYveX z$4bL+`>6_RLw)N zB{ttJkgL{2*dT)V;53;cA=(WIU@eH z#LX-Q8sXdwdc)`Tb$!iccC|AbgkO&1=CZT;9W~y^7*2i5(hv0-+CRJ*#)|O|MwZLH zNSq0&t316VSRcW{ZI*JV{3dV7K`!om1==Y5Da)frLHz4n@v*`-vu1p3M3T{zxjHIb zZa!>t_;WNebcwX8r&`x>!>eFG=+w8Ka~_aYJ@hfV=fn%v+7qV!Zbg{-R2YFExA(f> zbBr40%#i1BN`uO@++2_n;`R#V^3WN@j|ypDH#AFM$)sOxij%*>*LsEVDr56@M+1)K zV55vis#!ku_E{IK8DvoUZ(cmUu`Mm?Sy<~8>!Z1O2Yf%iAr3J3y?GZp7B&B4fHacV5sFWhG> znZ=>y^8Lu)-Sxlv_v>bIn^|(SEo;=&501-t8-)R30|nZRt4nMQ|7-lF_e@J0%osqmDP#hU9+#fR@6xEE#=>uSkNogD6g{2)$r=+Zr*#+m&h-Z0!dzj1 zofv0iARS0Cer>YUh7H}+(6X}U)(O4?2&2m?O052Gf|dE$>s}R% zYK1bq;QD)aGke>)Hr(G4ckIb!I5oGzR%v)VK2g{w;)|Hc(qsZ>!_gCG@)+jf^F>(w z>!q;;&*!A)Bh*^%8i!fOj6A;Y`ziM2%Ohpp?}rU%nI2pM!EF2aGbnuk^c~mxrx?zp z^GXOI8k4xeB0sped3kDery87Gx?C&mNfepxAHYo=et3Mf#^U?8I5C-6p3>cgU9~5q z{ZiU+{iY^J&kjdsrSZR|hQK$L%b67?EP9VJbZe>C|Ja29G|3lwPG;tfHat$K7uh^U z!lnsdUWbESQ|Bhj`_}!_2Pw9c^Nu#dLx-c?rw@@>8NOZqeUcAy-Ig8!Vkp#v?YvlW zUa$I?Re~_GxZK!#S3Er^1CVH!tH)$VVw>;t`|b#ObC6qJVRLgDM8vtfcgh#j?)%kG zXGutzY{%FdIS!KlR?!=WJxarKn!h$em45lVwK>>(^=BWjEjv!#IFX0S!lS2S*pUgZ zD;1vznLYo8Q;kJO_L}8C>E1FwA2AAx;yruqMAl_^hs6_?XLq$qV9cHSJ-a(;&7Q~9~MCzm`JuI`!rZDOfLiS$1Xs4Hqazwt8`a;`7WPfq^m+v~vl zQok_K)aabf{bJaE>w#6OThb>VWd$|hbI-p*6fF`SCeQt99mEw9;;p<~=$Y#c z73}WSblC$5hG+CNT!V=HI;F6NLOfH0`+--wm!^7m98{1){^DS$QIrt4J%Kw;9nX5x z0qvq#G=BCuft-6|@Z2YDoKD)nfI``P+Q@v*Qq0}i|1Gr)iTgjd#c@_@mR6Q#$c7GO z9pbW_7ayM5tRMLhSQC6!Gjqf9vt+}Fzr1Tq=$G`g{ZG#Q4HoK`YH+k5`vXTA&g{!B z@Xyc9dOBHosw8OP1f_F2T4TnHuQx&FW4X@WH);IQ%AY=d?zY{%emdMnu_w=DYo6^u zRNy&wXY5YrARCRJ_l}{YjlEiD6Cn8yzJB3|I>#6<+-^m+qr8=ks=bTkwl^*x`R)^Y z-8J}}!}_CsFNys4?Q@6xI+F+bbl8FzN4(+{oh}+N#P41H}HJkpM3yT z7)3wOtuT=qV^~>%vv%8l^3*oHu{S@K_XZ#HgyNoV!$Ze|ZX&@)Irsd}Kk-K&ys|Ov zc*i(ZRiI_6^5Fjsi5&~ZFeOlS z@5SaBNF3AYbBa)78w*og(-#ll<9Q>LD`Jj^CkY*mFAbL9e|)aW$EAQ@&w%AU%TqV6 z*ic^@CI`RUOb{-8FMFR=Gnb3|UoFAz&WvYJBV(sreO3~fBhp)*sM6oAnt;|lxN>^d zW$_Z1`;Qt9Vgse8Wv{j@e$?CPnO8pUBLDWAc@OvrkpCVf{e(n95V?B@Ir>Rj61r)( z!haPPUzWkhN88uZC;aZ8v{F=4c8Ogtm5MF(|D>o?6YATkIJqcxZ*f95>2K26yR^RE zXbR)t5dVz(+wP~b5f$Z6&>e-h_XS3|9rk~u^3S)##GS7FxqAWiz^dbN2Mhv*9Qm3TOCY|x+V6; z&P3b$x!3q3+R64N+6YzGE?Ud82ZMWeE;0=<9AcNI5*ikAzgCFpDx}tR=?)E_C?{Z?FgU5?;n@;Ce+fj?3hw~KAY|FW)zI7=@!@m~a# zd*N8X@#x83X^1*YTukDt$*|OWT)+yiM00H}M?Lz(73v^&MnU2*Zo8gH9>lFm)~9i8 zdC*dFY|MMg$; zPh5P|3&f00Rb6;&Vs<5?O&0XkKy-L74BXY5DJ}%ENcA|r1r?AYFBs~LZfzZwUH)V@ zd}%!Su{G#Dp*BRqq$7x2HiA&mc|-%_&*Hx1R05`_z%??U+wP@l1F-eXD6Lt(855E<4m02dS#OORP4) z6vq80>8qcP@e|vMXrfH9)E$F^JS(*)lx{Imd-@q%pD5CKW{Gk81=3G>N5f`mHE|9; z_!N~uf)waynSyIxt*QESblJ~kw}8)qRBNl`IPe|jSX*1`=_Uu-7bjk-^>BxTKJ6^(>tX7VqrgGz%65tM)|<8-ogM`7sr{^C$c$H<6a+vV-d z9Z+ZyW}OBv+#7~IL{mvnHGb|q`d<)Wm&E8E#4Ajbk7|HcH>$x#BK*061rxrDqR1}i zW=CAmcX1m1@6W=twV!N%LAR=hGq=TZ>s&6sqgU2k%?o8rzuWt&+4_bv3)Z>S#9cJ*zdYZtpekDXp5$ZIi{wynh_rnA920_;kudUvWGyR_3nSZhHEot#2~1;vo z3VirM%_Ms8E4-vz{2=in)%O6Zw6*6r%!L~T_o-Bz zikZTb0(v5Jsahta-Ok|5DD-g$bi7iBKr^FO4EtlQo-jqU~ zct>H{wEpT>^nsPlt^Dzm7rmaVqlFZ1WoHl_Nwj@ZZ?wiCBXIOruDut)GMtl@HA1H8 z8+)?!CqbxLtWE|8S)E>lUDWdaDd0-%%E#PB2h!03{sdn3gBRK&i zENOT2-|0L`ml<{&4}>e@UYyPs{1;=q51ukpb~RbA+6Q#hV@Fb{gx5w>spN1My*f4^kj)W(XhRtTkJ zvU4VE?v}blVvXDikFL$0Ph-S2iUDGPf?Jss~!g1CLK*I>X-`^e}3E zFXNe@tnv(pMx*^Rg(aNUp0Mr6m1Q-ZukyMp63J){iJ3f3!-nzv2SSwKLt(dJ)>&>@f zEfj(?6B85lF!gU1XK!yWUc0m~^X-(;X$jvBWggwd-XD`sa?D-&DS6`V21s^kZg;bd zfWpY9Prm#6Q{6oHri+NHB{TkNqGT%tO8Lz7tF)EJ%}T!EC|fZ-%RatBaOmY3;Q=5+ zZqi+8%x}^!t8i@aW}_QoR!C?R4fqZbyy5YI5{LA(H1i?{f2$)u?t;VvlSCCLq-+n5 z{BS;Gq@&q_$8}3;2kI`pWm+Zw)pS_?Fb2|8 z)Yb6VFb;0XDFJLzh2a^+;my>YnP;MeE7&KSB5DdB#SPBs{;@gI+pVY;#hDgm5uM>z zK!q)Ea`*Svf2k_!5#t~!aqS4oPgcFkntc|$T#s7X*@?Bby_3>W2!i=G0$g`qKgzLE zk^PsRuD$nltci(9)ZyQ^E}9fQ#vm+kS(;@l~1yS_XN342Qt^rShr z$D3Q?I%huMG^pR+WtkV-kI=q+w>WBS7)NegXKi?f+Dmkt_h0NieyB;N5#YUCY zobTVaCb0RnX4_RQojCA<#!&HEPOWM6uQD@DXKD$P<Q-oK`QTr1Yu@ z8$_h@lh7+-v^n0rdq-#%ZmS2c3SKs^-;a*6;&XDu4S%HHRZ~`ec^Xu(9czv%)`L(C z$IQ%3m`&0y7=j$ZWo3!(Ry_E5RTA_Q`F$x#OM-=jDl?_*ZEab43b%^VNU(nfnNO!v zO;_&k_b0ZNLiSg98(f|ZskUcOG6D|wvMavS-Bgk=P-;+jn527rF5Fd2jFAUs1o$Pr zv>rLcV&aUqHB^P#)f`o+$K~I=U5uE!8OJWWY5z>bIkw2Bd{eg~pjkQGp6wQEC9^up zY9M}5XEahp8+0xlj;3o-{(^_nwJZL42$zw;oSP|YQ{X&z3&drfA=0H0!|BqO_P8Evj4-7%!*to1C1~&6X`z!HPN(nV(Ux zm;4qdk;@%lVn^*Npk8#(y;#VaBG+mS{3(RaMaT)#mSN>dQrdB;B3THgZuWNIOfD+)uVSZWeQJXAV;T| zGdajkI2255YHmFGJpN=E&CE$1t5^5UO1Z_Q1kNZV4Se|_#MEb0LyCoB#1Yhd8bA-v zUYDdSBtQ?r9a>w8}gjZr*Ctk?~}Q>^@}F8s}|?r+)Uz*;vj;Y>y7w#1Vw*PuN8q-|M2=6S3`a_W(} z>Bi>Ereux)5I8P`XVj!g_H4eL?x}zCm|xOE57&p4*gNEMdk39b5@+lifVyV5_eOSY zdv3{9qWfof*ZEymW?yXz%=K>%>Iyh2ukEy#Z;rj51o1xM%YPCc%O@!WhCz1OMDZnn zS-h2k8rRfKQG&;#-9g@P0;H}lkYHyWML9G?#c>)~4z1B~td0RUlw-01zR{794WQd2 z2x3jWhCH&ezCU)}2O61m-M*fOL?6+rk`&WkRnxWS;(UC3_qO*5q^s6T>ngU^MKdhW zpZPSWN@4QB!+GTu3UxrU&Ufl2T1?&0C?|7hfd6%GZ-dkc=iDU8kF<_&Ef-hoJNXJ3 zA;4g1VliBG>da^ARL@6hx*P2bE2mjyF=-pC!CEel=+6_FksT*2_y0ohZw%>*cf08MKV^ zAvRmZTs*52^iE7GDCY9j)ZoVMAdzeLXRbEjk8*3N_q*nIpHT1CEGEk?E`~Bh;9| z4u)hYVEJ>DQ22OQyxXPQ*ApM)y|p^yQ+4XUl!hw}e`&?RSH&GD_!Rs>q9k%(UtD*> zu=u{Y9VT$9h3))a@dH`n5_V;>u5O7N02{_Y?doO7>`NxQogE2TOZADq?(#l=n$vRK z{;1C^6BK1)osu><-lPfLap^lKXe3~Ufu#3tx512j=Xk68+Y*qS~Z0! zo+RO4v)KzP9OB4zYD)}d zBKF>7@!XlA^laE2Kb$|8?vmfcx+zyGU6z{7#o0ZdI-Z zArYNnizqjf&MjFE7TOY^bRCq44-Gw&_TFPQ#QCgx+&K{J-1{t11yWjiW%flwj!mD5 zU^$^v#`@nzNT3Ob${{B!G!iJU7G5b1q-ob=f^Fx#Z`_ z%d9Y-&@r$OIjyr8vLv(q>1g()J+`GL@1`HloVf*a z!294D^|X1mDY6~&tGwbClFE~yKF7b1(HAtT9NP2%3k_ul2Z#DW&0g%n^(RG^=A$6Y zH37f@1BEss@0km#bz~Lq5MPF{@Nkp3J%|Nok-{Uy89bHHh)GA_ih7#14`4EH?QR6_ zNWlpRTtNUas9c5^>crnzg_Ztzd^kBHqiJ&kEWbF3L}Kb7qB~cn@0R)D1MC}+SuK;^ z7m5bKM z#qW;$#I+d7v#z(P^`H%)o119pvpr<)*hg(&Pr0{IIJ8Qb&ULg77o&LkV^hS{BtQ3( zuBAG0E++5(wbtx=hlF3>>aAaTuWu`<$t|h4dp$26zT4AL!K&IyIvzhH4NhSG6#@l; zI)?7w);agGp&sW{N>1ON0+Xxv7jtjE%WQrp<$AZqsOl)ELOp1ao`nZ3}st(CY(YhF>sXL7O#{IdTEW)p(;KteRj6mC9RvA4p zyP~<>#t8XfHT(_1kHo!#WXnF2{7s;Xxv83+ju{-+DpH3f~gGfl$4SZUFbEWo|!v- z{5ZqtARsjSMgO6leiJoZNFJK49CfOEkxA>U#zSZQH%`YgO|B=st&o3(A*TFZ5AAL|L3P87(}u~4&(trow-(L_;&H#iOI=@LN%`$xPBu*LtbIA zd_~_YB?4*cvN( zqZMjHlX)X6{9g7g(R&)U(}0SWE@MT_aE18QRVPMSpYk|xaC7{2LZ?1mGs#Wjzo>iH zQoF)kDpJev0%$obdZ8NlUR}Rh9W~`xkM!2VtxoOOc)o7GQ{d+P4x=l5bF*_~Jp7bw zmY6!4Jb!fas^t3Xb^P)-UE@Ej^np3&*MWsS6(kT6A1~6vu$;b<0X$P?RxgQ zhe&Ig(x%jd%Zm~XM{w!kDUsAb@j2{XcA~(xc4o=mE@aH6=yZiE?zC`4mqkP411YY4 zT)ZeO)~K(Exg*jVqC)4r`#7!7!GS&!#(OC?`e)cNvj7qGVZ->$zM<9Yp4fL?1#3^s z4V;JTWQXp>br|3rYlno8t`l=nbf#A<8^7X_x8<1r>W!fH_e8KbhY+(uQD>$^ysz&Z zdxNqo_e{O)Ko6vh?g_JNy++Ys_+V^n0&!g?4)Ye!CIrgXN)?W&&vk^}XZp)LE z`uyph0UE~TsO~|1)n47ar0dxpZY4vW%e!MtW)g$%Irr#SJYmUiJ;D##l?il+@23vz zkFedYZww6$i$MY`qPplZ8joVuDPk(+^D=r}aXpdLM)KHJ%> zzMsnb$%(jnBqt7gUDMXRGWBt(#&D$ipkJ~G`n-H=oQ_$XUYRsu7wlBo*LM9qESHwa z%HLu2--e58bf1cca{~P($4=e6Nqt&xE;Sa`PUrWV78wDpZ6Ve{@6az(6~)6fS=fV~ zcOhUEQ+nyI53e~2EdLATDCNtG=WRFWSL;)r!H9to&))8X z*ZEHFPpEd!!nptGN!*c6#py=-o5PAeyItsZHJ2S?XME#}At&9By%fse=dG?7CnJYK z)$nee-hYiXSt>1$thzHbVxz_8Ig3wrJ^(UGXvW7%Pc5zcjW29UHba($T<=`bXwzB^#AIR|-3(%w4tP?)_-)i|4r&#YYyo(oX?fO|& zp=^B^#ZEUFdod5MtSP=F*gjLa)a90uzV-F1q{+k_`AprG^XldV?Vdj8%MXg-Olg0w zui$^`OnyJ{_@x(p#j@bQ`cCF@$=m`pp*>ZhLCuvhi_2>M7>d0l((=7)sdR-_=KyyS zp_x?YWwUvnTqL2Tnny+LMp5~WZr}`oHiL=lCk(FADUqYt8Edc!vw+WqLr!tsWxnrB ze}BKw!zop8{L+ z9B{0k82dQHiu(M%k!r0?%4*(7=n&pxTjUYGYm;?+GcSBS>YeRy?!AYdA(QV|OThiq*+P|C3g-SoQ5Nhj*N>$Tt!7#QdXc|;Q=ZqoO44GrHTO#{a-WT&n<>im0O zF{weUmb1SPb|0tD{8IPWXeZyJ=tAV!!a}&zNG9}>Klg+^WH)dNEN~mqe1s>4hn;uJ zuugZZagdK3b4*4OTUAo*%hj?Ew#dI6qel5j(0?*-4rCT@gyQ=g(r-g*_0H_+HIK>U zaCM=t7;kTHd3ER=I)Z0r1JooeID`G>CEfF`16J=G!~O9ZG^1OGxbaXMrlrn#<)%nJ z6(E({dA-zk!>ggqNjYlJxHPkIjED}U_Mu_n7Zu(0&2{ojCq~)e>dbdricc@^ZK6;i z-yh+1jJ%zH?3hLyq#7(C?X#2{(KI`ra0xqhV|5xpH(DmC5vlJNwh6P~`FNoctP$1Ds>LQ7EJf+tF-q(~uB;C>J;zG^tPch@ z$^Kc@HaVW4WniFo1KuO@3AyG(o{r7CYH8sn5|IXLZ$KpsF2T(@ZA|Y%$9$kNirnlRAAY8)}-Q-NnPXKpV7US z)yt*^_|BOKz*}#qsHg<^R{j2ZICQ|^zb{2OD2QLRbTagp`08}wE`kFqQqCS&&x@uwJ1kP?T46fa% zIcHDrFZQQVAsS9?vNDy1{Ucqx4XLsbZ3C9`zfE{h8Hr<9k4b$i4>aVVUKx;PE=2K%`D3E2Xe}s;2n->3uc*Z_j0U7Ri zmkI!>$F24C9a|Ij&vuxayk~H}i@REMr2gseG${t-F~LRK203qmk`l7oC_qxtz>wY{ zhUsU=nMd-@-UvzbHN;k1ew}&I_tO}KqF1STe{qFC2*?>MdRxWV-q&|7GBPp@IO*Wo z!f<<3)z!6Vx!Z<|{lB;6H^I0uopXlkHgJh@t@QIo*AQBbqwt-u=$}FroM9I=QmoT+ ztLtSmWK=_5`i`{+?I5fcId+cq07)PbjL$)bSS`8=@E_7?+DpIKn{2y#dYFt>R#vJ@ zgZFpDn6|0Ga~EA*<4uKKvRCjN^Zc4ju49h`yR1(fR4#&CRL^>@|s4;t80D{D8SjjshT-|NV@;$euA# z^-)lz=|cXbM&sdTeflC17b{Z!mnx^E|1O__YKU~?`gACwd_yuGK@lV4S$GFLhY0|w z+`wWZ0VAQ5@6kMi%g8QOArJ`pgYKXeZVHxowWWydLbA&~O5{gPf-N-*xgFSY0L2vz ztb>KkG68B9p-)`;Vcrw*)iAsT1wB32O>WkBqU)FwBH{zDYb(GVp`|1~XSE909bD;> zJ^34qiZ;rquan^+q7^GG3jX&nei8{IvYGg~3kJ7XljN{Ph$N^SnP&?#KJ)8m z(vjbCcgNqjq*?d=#Z4qAFhD>67i0gOs=bZ9`|!J?K=1Ay{v z!NoeqNMD~Xr(!)eA}Xr!V%=#@PQ{>riN$|x9#UspnU0MglK>|o6U$h<$d(sQxV zpUQk(!R&fgCqV`I{!rgr=NUytZ+#8euPK9f=BA;NmKr4nIZ*YyILdh+K*po}=l5UF zas&QnlB%#3Z%1iG<(nZv6no|URLPVJO#;*lGRngmDSB~EUpS@U=!QGw(@Sei=3e;$ zH;~)skURT-!67BLl|v&k{-}=0L&(Aud$m%Sb>6S|M#}nE^-Yn0n&j8FK6pr zSs%2o`uLACAT;qae{Z6P2!f&u)2ekRtmuL2b5^U>MLqe9M$9_34OUO%16_4 zS&66iWN*K`OlTYL^gSjh)qMXTik&7|VXGxr<0jJZ0u$i|AP(>&J!g)RxBo30YU~=I z>rQV(uJKMDrNWpNpLX0Dx>)OeB3-Bx!WruGsoE2!%2!gGR(Cg->IRc>NjyK7G7MKN z9S`s+3w!Gk8fF#&J``wlLAu|EcC&!NydGO*cEC@7 zOHPh!B(8MH!hQ2kOX`;oz7L#>#S-7asgh1V|l-KJ(F z1~Fs;H=5?HmW@Z6joq)1qMmMe&>rj1OS$p~v_1sythlX>J`wIdL<>2)1N&n9MPLct ziIMfKbl5HEHGI9cxc^>XB&a#Fq((dRV=`I8W_t)cwIJJ5P7#f;+_DghviOMHQ8XcGA{`u;gzN6n0YvjJp!Q3FM}UhRin8b$=JhJq5&Yh7|iO#wUkO=@GUzVcEwFL2D1H zi1O$aVE)W`Z|7qQTs9le3P&yAdO6JJDYTRBbLpB^(zD+*WlVRx zG`6>V0EsRf8k0_o=newW>(j{omO&jw3KfIcv+0BjqHtcaNU@fs{^;{dY9t?XE-U*z zRf@Z0=YhMQ7DM~geXKew)i~L0bu6vBt*x9uS#o}i99cdHM+;UeUG(b z^iQ)MLa|T5Is!s%&t$}-7JGcoV82A6JA-v*88DqB+g02px-7HGV3A$>S#Z?&kLns_B#4u`kQfx&O zHFlXTJ$K;SH4CRayYyFkb>whq(1E@-Hse+UxB*&wsf>X$-v8OUA;78f$Ey~}QwbRy zu=%og;Hy*7n*Im7{a8H({nN?Ml+RL|pnz@IW?nPqo-FL;yMIGI&60tS>AhiPcW$Jz zH*Gm(@{^*RT!8mbdQCnX7ur_w?EJ-6u7ug__PpUNc8&7CyfQ&n}Qp%QNJsw z*ZzK)rfK(w$sEn*Mb5oDh(<9xd(RT=cHih~xiG_+1YdoKU^<+^3KMn}x|8591d;54Bt6$&6Fwb6BJ?TJ* zuBtY4o}Z|@-JG`KE;?>AGpj1r%j7zR?`&>XJm-gLyMD(qQ2_&?N{JgBlg}chNc5J5 zUu`|2KlshOTf_8;99HEqIb9YcXh_8FGq@IivHNhw&p3quhBL_RG?5Z*NMAI_((u1h zRetcTR7#z-&+nYf3trUN89~JtoO@ozgXAc=dzUPG&M7~Pl?|3IwRsKXpv%#j17SG_6Kbn{=vVI-u*L+%O;AwRVGVr`WIdn&EKd$oZ(VG^RUUK z%&WWbY!x*&6f@d$>~|?X#p+Ibc44OB>+hkQyDONe9L9OJH2Rt4nX1F)Fpdv3m57Ej zct~Ei>fB#$dR0^JG8f(3Fa&Rz-Vyj^W_fK~<Kv!v2Xxo^V;V6wYZD+8=rih$P_0xZVn9n425x?^|CA_&`p^kysEn=GW33S&~suX z_SSegwzh8!*L6~MtAg^kQ_f+`Oe{e0a>o^S_a8f9toySu+ppuI@Cl2xai!wDYX^N^y=jZqN1OL01u3)q*SE?EQiCJIibR z6^SbJrHOdOV-bIQFrTk;`QL#&yj{ba&(09Vwc7H#wUD#jIk3|b=?`jX22~Qdy!IZqi zjs1QY(z}oY$)rvC`J?n4Vk_PKNi~fAcQtLTqfOl`C7PM?w-#iC>Q)i>?9kWmmuTLK zW4K9RT+;Xpkiujdb_X;;t~;IkRRhwkJtm(p72)nm77`n z3-EETSk_dPffO6#Gl1KY*SUlQ)JNz>^>8xJV1{*;spU0gdBxvqTGh7cmuyr%%}l}- zF;4vMF%jRVXHRmFu7DbQ@{0om;j$Of)|Y>OCIwOw8eEVOb~_e0w;YP69i9$>O(NtN z@k;jgcjG6t=5TBFC6gy(q+GL`V?~=Ja!B;8wr5@TSEf%NTX7jSTL@!eA*Jv5?v5zN zxl@CT{mbn@nd;x~F7|rO8-3&uUC*h^8eAnf>EI{phg+x@dN}uNH1_Tn1XG5jg+Uc4 z{?oB$&jh*#W%WD;N=;76_7x6fU_ejRD- z22j{oSX@xI?#T>A;%CuGG*&sIXB%h__Rt|%+5egJd5LK8VcrtP?2p6h{)4^=ji&7y zh*Z&Jbdw1c9(|e%{rmA~g}u-YGEtDmTAZ zU#HWoe=Nf4$t!e5vku7w4$zZ-Fqn#_aT;QStgtzQfN%)@RA@VB#&2zJ9}Q;r%xQAw z9tayJQpeCTjhj*xEE4u!W6qG7ZUzA`JSa>?Jfo->_ z)`p!%j;L@ z*Y+)9NaDyI#Ef5$h>bmEhf^EX2Ks`J-N4_5&iAlX{a-~m@+<@Qv`Rx^yklJUBWz% z)I=VOfYzJIsBrTj5f+?I+(H!Kee!}imO-is_)4`-jkRyZ!<652bNeSG^?)GYVedVw zB&z>SYOXo@&oQiw;mXn%)Akw|orFfjKqpl76VMC~>TcQpH7`i@nWesE;2u+e#LcTo zRJ@$xE)*>>!EFanpI>!`qLH1J*2K`XrjpwU=yIr4dIxwkIWimZoHTFHpL2-~nqA1X zu*IAa@(kVyuVEpYFJA(>_k57K+WxM&sI5Di4KT=}Ki)X#FV;Y(%q?k|8r^%1T_Z(d zT{K@`920n+b>KrvI{T`>-k%j$JWJ4Jy{CWk?Tdu-yVZ7ZcN~@~Pu`C)AqkkKXX?7f z52&%b_lr+gGZWJ!B`8sH635MaU_Gf*I8IQ3}S|k>Ksy?Q5o7d-d zz|IZ7YmqQd=yZ$+5+Rnh*!?BFmx_m8CH5BG2&8~!Fy?$q04o#wBpii$DzCYo&92Q= zx7%Il(jdQNABHqz4HOHmt>-aqrybVDJ#Z|~8~Aovd1yb$DgNzZw!azV=*YJV#av38~4>y%*hoaWyqj{xr*$G@I7}2Riy0@K6T{B-7%+ zoomXX-s%#eJ+G1S-o9$Dug<3$Gg~5LtAUdI<&XAk-p)JX!+kYDWh3_4|8JG=1a2R8 zo`|oKFJ`w-!H(u zG^Ts(za^DZ#q>B^L`T+rOl-`O>{CjhlKc8ed7V4vxHU-Y9}(8Tc6P9Q_aHKsk(bsU zzyG4?=q9ZS#8vtai7Kbk9s8570MpzJ(Np>Rfj`$BBaXqj1T~A8_t~HS?vIX6O+-Lj zKPA2fq~|KAV16S%|o zT22b9!MO*)yz;`*Q533-uQjL{?AlNyShR`LPC%% zgtjoD4e$iHd&-{{XRaKHfB~k6*{Sb!yP{SKyDfrE;Xtm4O4@o%iBaRH^cr^i(_iF? zds~;bcL>J%nV{~~khcB@qn1KTeZbW8S)wS0IDX`#=-<>n^SCwq$=IIkkHI@lEf0tl zi@$b`*!H=t$%`s}ayr z$koq9WCX`@x!fDp;4Yk6o~=4yj(+Zc07VfY{NrCtU{^)JT>|nYO-^L2>5j0#rHEqP z2RU$Ui4{@7LOZDJ&)S+}C*RzmuX2h@GG8gK3~$&)LcxCEZ98%1z(QxJXJClb=#WHm zg{7Bf>dtzXx6P@pPgKVSyeEukk!<$qvkJrE|JDrkQRal|K%!;;Ilcgx9+rVkR=snM z5B@7Zi*pSZ?V&Uz=DJ&b6z}P23_S14n5tz6Y5v~rJC=;8jcra1=Fmq_sf(%K?ZR9q*#3LKKZZa5eO*D8n!$j>B~#*2CgL>J4(h|=UC#Y)b9rlM zm_f-|RakiT*C42C)U&C-JtH~u2-=*jBUN{3fPV}HmXKclR8UKFK08U%GFKv8&<6p{ z{EncR_Y$lCq&FVC_3+`tzJFtpGd6n2poK#%7M!MTD=aKiK;nWM9{wdFQ?Oz!KCbLw8`1~J;d_nJJ3TBV^kXZw4z z=t;&F3^8U(;C2H?_ZUO!w}@-{zy8|~NCx==+H$kh`+E-ct0<)bm^d6fY8{*+m(Ix? z0eXkY9!CK*!p>R6y;oNQSp>OA@y`dp19!DCIC!*);4Y|}%=P<|+MGZ79%!7@!2j+t zfBQ0SAOB9$bHUz`*L&Wvy=OmC+d1 z*R?_!$aeTY8Nvs%8=c=tzx-)D{QMN))xWCMW3GroYLg4CHTFcV-+g)4ShmdvG*T$P zOK7|Mh36(Va_lUOnUkRWYK~ym^e|EX!l3V4Q81RjNVr*GG?QFL>dV(<+OLrUnjfgI zDH8g}(ycBs6V2bF9O>Ru@@kr{NJqv)|ND{%G;mbE?day^ATn4U*y zAJ~5%)e_J=Jc?&;zUK#aM@l(Bl&N$11qBV@e|sL7vo>8D`>QLrX=5n_IX1{>#0vlZ z9v(yUS`MoKSS6%{fI`gIj--3bFitd%#k43}% z$5Q1YK{TmIXLJjNk}F1TqplT=hcG4ABwYaqvFi=nq5PTpsv4Vgj=O+WJ-D~4G7FB? zq0sPqRsHh<{aRD>`DpE%GFaeApC&^0Y2v#)Z6wmRz3saCtNqi+Kej;iN8MBD=+od4 zE2Rp^BIHy`^tVjf==8ryPCY`Wq^5Wl`EK(wy`*cbmsPHpi)`Y!Km*yuE28i;5K?Ro zrZO=zPqr(vMIxTG6t|G!?OGx-`L_2S%2|H>LjInz{U!zbwS{3rob_l0HpxhL7t~_v z+8A&KVzwCd&x3!HFKceNre>pts~ccwovg)*@UCSA(~(5kC&_Yf9$q0f0dI8cR#dx6 z!Tkn$A|xahPt&`2xw)^?NX=g`nHU8+<-Ll3{imz>xJ3D~%*+c9`!?n#j`nNCEwDNg zea5M{WFP*TykrORiFP@aWQYIDBdlUwX)#0~6f)sgGe2Cf5X(V&{1-{!gnAyrZ`lr) zVi8U#r&3C~MmO-r(ZGE9G$OjcDXTx?4B67r=NWwDu~sUthTM8=c$>F`q(z}GkuBw} zr!nZDDcyksB@j$$nlAR z#oqEqtI5GRc=NhXcp4nfdHHT-hKO4C)B_9Xm+K!ORR8T7GmF_=*!2bqQvI=;(r1cB zJTls~)_@q&G*Dp8`M*)Wq19T64mW4Kz%$X z9E@t$NHHhQex5o3)kr*f#vye`JHN?w^W~J^^Fl_ofqpgWIPC9#NOHZ;B=C2nBXl^M zNNJ_naX8%HnX3q1?EsB#d0Ls{|0Dj;B|*^vs{f0(=nOt*D0comN;6C+t@So2Fl({0 z;*wgHTvVnLMmZJmh&V=|uaQf?DKb8P zq&!5^=%&mXhErn=+W3lAuK((k^hA8-1>wa-&!WzqtWG;xNaEydnDO|xW#p|J>+6=J za_USk`DZw=vv2NS4ch7Kwuiv^>kz)se$>v3Mam`9r32<6ejlJFBca-ZQH}m2$!9ELgU6a=EJa;Q=6ouq$c@{h_A|_u~=J`Q@LeT zG9DzQ+S}6D$izUsFDCcd2S1B6RSAzbtpP(uYH~S_GxoV`4TxY#YU2MS*{R(iF<>uzD?FFQWR=20U-S{aEM!s#wN5Kf2cA`h$zS}ON zwA7>M?tX@f^2BA@_X@sl@<)T=6l)6u3tSvo5_MSyw}yu%s}f%wweJD&x8fyWv&T*X zaxlfQ-i#$~m zn*PsfT4;lg;_3GE^3~$9C1(K|8AAy8e!tEk)wZYr*cEwg{SFS7i{vgFk^$k9o$-Z0 zLO9Rm(5ec}Gi$bG0}YSai00w;3~>AZ4CwMdUot`OK8s6BE-LD^NV@bZ;Yo5r!e|w`yuSCv@!q8fW0fC^}kpNG?FAj=QqaZfs~~XsgU2n5WF)eqme?p z)d4wpeO2P4d^a@Q&|81=W)NK>js9b@tWdJt-0#@D+5wJ@TH{M=CxMvFf3Gc$C*CVJ z&U?LI;YK7CRzNrR8eoWf%I4;24!Xw1iTOoE%(hrFlLL{qgN1(y{V-j+m zdRVA+ZS1IVhFs*0V@OFN$6<`Ry~Edf(H@7lT>np$)Mr;f$V#&tG(Ca^2SFyZ%@sYF zSvC?bKwVZzv}t1mZ>~+hkR$}jLrj^6;v+bNr8^iXZ)<7M2mY_kmEz#LJoHzdLr(f!YmW$~ zz-gO>IQ;;0zgFt2_PmNk6V^Z+)bX1q^c zD4&?aJ@WT+5p)PH$r{8tT=J=%6p?KnNMcMPMHNQSw}sN5 z{>ZL?o|Cc>U2FsS{=vD|Ta_qOShU?lJTh8fss7xhL_5Wv&guPy9tV8mmO9bxM&3*= z>Dl9r&M;Xvx@R9)UiIlr`odpsTpSr5&33jl>T>rKSD4 zhu$xz=%(1BO*l-=9Jf~Z@fk$;q0vmAGo%jPxZr4{v$z^@JO3zF+_iz>^|Y3#-YJh# z&$RQkFY)HG!#D#MLbGOA{7e*cYaDm5z#xZfMMb-t_i2h#pi6+NxtTDFOyNB{d`bn# zi>oo^TW-iy?hDSKkUfYZ$nB`;xX&%P`;g7nDuRz~OUX*VEYLSzIeLg)N&ULQyzTWTG z>-l;P3r$6()?8d;N>vG*!pJGm4+J4#3q?3NJCi@lLTdiC>F+`{8yd!3#RiIsitk-jv-n${!6@uf;xjS536l5W0 z@anQZ$cs8y&-0a6QVLm-gjQhVHE?`eE1c&iL4I|k#%H77f+UULvNUA%;onMnqYdVV zI+ayYf85wI+GYY-;vsU(>^bNkkiG56%uELvw(}UO{|OJU=w6D7?O)cR$9}MykiOwz zt3BGwEmWN^U%594l#XlP+a5J1DJQXw-nK5ln~0@c=DNBI$ag`YR`MK7>G^BU!seSQ z{mK;liz>NCK?xV)40H4RK`5J$>(jgY_I&n2dG^Z@G3_aLxaz}NDk!>Id$v-kMRsmT z=Vvgynpj*cd`NQ0&#h}V|0wE)AnvS!qZ3k6pXXb>Cg`)fr(@Mwm7BZ>(@6Z{X(2ze=Ubt2eJ$Oc3rL6@s;%^ z)T_?cb)Wk#TnIgmC6qe8s4A+2L=a20? zX~~9ZmI%y_-U3TypDgno;7a$r*#j^_o6&1w1N#)0i&>&1y8Aw*MP9g@LZP6I1dUBl zC`Qc+TX7V;uahxP)mL4ISBk;pLz`(i)9UMq&CbwEMUf55LPSJgBsu8*t_BBNsT_CK zOha2m*X|9{&sLVp5xqQl-0)VPHHoaC1AU4yJtSnCP6u$B*`$d%DN98Q=*wJ*BSqV| z6g91Jxmw2hPGg#R&kNo5xCO_@kzWe`{pFko7TNgK#GJ#}1;HhiE3IM6PoE<7&#Aky zW(Zs5mJsU7eeQRMv65ZqzJ_9H;^T{2DQFE@FMX${DfWgP01)Zt>UaKme*V@q>@s(^ z=stxB(v3zKNGl_%W^g9GfK5@b(-?+CA>h+|x!r|~38UUcP#2N0kas<}TbQDNW6j)H zxO8c$&EY=Gz?$f08MMkCfzLJgc)k4c^A|(=sz)1F-QT)D{0*n|J}I^$wdC4SWptvu zRPSB080v((-l9{5%=<=;T(WP3uC)1L^26_&}maPcWzab5RAY z7v~(xDJ?A4Z8&S@c&RZ0bTgf~R?>8~PbH!UAyjIRL$$a#UrKDC+mi9wZJ(rw$XSX} z-MluaI^mZpD5;PJ)=9((O6E(a6$`$UcoV%00YBo)&BtTY-q=bQ8L?^kY&O1`Yq~Y6Gr@RS z)+Sa~xyCjhbdUUmeGs^b);hirb;p0^&An{XH%Jy<|A)3!_ga{`?xc7 zae)-?LjL)D_`pXEIDmnUu3;OkJ+O06Z;e28Nc`4u)I zf4a!|1aOV5AA{9+!cEp;Jjv}3AOsKXHu5VWSD@m&jSh)HtOVLitxX}`i5%^2mw%#^ zuV=Zb);45EBHD4ZGMa6aFlRfph&m4M#}_+H=U#}^9w+&O1r~qC11ImdYTq=hWC_%P z&=W&w5X|b}@+&K3gSe1gjjHMn(V-Kc+AT2(jA>73cV$@{#fJ|+pg9?Kc6d$1A8_3V{}TW(-WiZg zj7}lFPem8)4ENSDGsHhAgmU&Iw#TTac`fm-u_FI1!5KjVPKLs#w^MoU9906E(31?WfYHHA|K=TBG;O-d;WDaKy> zL1it~GZu4|=xBNhXB&PjwD7GOSX#1&^94uvs)2VgB9Ey0FId~JtP9#Q2A3nu78NR6YZI#s;RdfAE&Bn72j~N!1fLQ>-T>zRc>`Qagj^L~WT;7H#^n1tjKUTr zu7As*QJMWV8KN_#21oI1^wpTTg-Ncw`zD;fwfp5>b^t7|5$OX{2xmGS#0p7@#m< z!XsEzy<_a3B}8O|lR$I%W8LU*TIqD#7NxL1Mm*@>It61xU&Wri=C6lxDm^NppR??> zAo|EXTqb^D_^ZXz;>BBSRteyG>4S6b!%*|Sh5bop>!!N<9ubjTiv-%+yLxYoOgy}i z+4G)PjsCSM^l&k@cZg5b8G)vNufzpr0tLoj0<;$XAq5C{34D_cyQJAe^U)4L?M;07(8;nYROj(?KO1Vpl;bq^kK zZ8~T8Sh>{c<1$34Z?tGC@JQu^L#D=V|FO<%}D*jID^P|+CI-P16{wu zBzeyE2U!eiyLvd3Iq%`n?152vCQh{M2+<)@EPskxeQ89w|LxdQO)J;X8fr9c6moxm zcU@S@S%O$_iIgs}8@7IiL2Lj3fr=OcONfDauo2V+-xBKt&H29vE^B_)W=JnMH}k}+ zCR~y3uaKZ&KN!D*_I}~=7Girv+D63|H+F&pFvUGn-0CMb=-J-dttHphiVvL!_x9F7 z{lYXf@!OfqTSre2?Sla34LRB$4l~~hiadi?=K~+DS=V*&2SW{E>W>9C9M$`I2DZT) zyS@j@2h9L9alnuH0W?$%s~#YG29N-K8%cRga2*=4sHrnvzEAg*sGe3&z#l} zm!o?w-}^7UM8XS$=?J^YVECRM`;C%g>7ntYp(v(1c#n(g8^4&P)g>NK2heYCHVo)2 zt|M_Y7T>tK1cBENlV0vR)$G!EA;ZOH7)kp5gq=s#OfhYh*v8W-LuQ>SS?R0KWRjg% zp2q1pcyT*U_gGBOaNVc1k4x~`nZ2W*S60@yrDJHwl5+dsy;NcPtY|PTKm^ffyN|^) z=A+Y3pzwn>LrJv(SRpZ?Ka-K*9#TaXi!2{6-R#C|@B%xev@ z7uuwazJw~!ZJ&D{fSsv+_uHzjqaEe>{0GSI?y7kg53vMta&euQ^T;xMKjZ2C^zUM3 z{h5P@@#Dle5D z0}jT#H7-tXYO_)cVfUG^F*Y{7yYX+HvyzrtqI7FXg%s_?eh`(IGfX|iw^dkO-bMQ& z6DE5?cCx<~slcWL{2cAwYwpoS*j9{yk-T+QtWrMyw`Jh>{I68-afTKKpuX za8NE}`MJvwP0%y(Gm?Wg`9sTge3y|FlmN8E2l*P&6J{7~3_Dy)$m zT!47MjSsT`L@?wUhn31pfLcOePR2DnD<;DC1{!U_jA>DROdqD3DuilFLYY>CbWH`{ z&>saC!51T=MT2HZ5W7PqlX!dTbE}gkijtD;n*zyElnCAIOl)p?j!@7`&OCFkJiaDX z=n{|CV#FA}!;Z&Ov-Kb?eQv38Ip(yo@Eye5$qFnDwKCJvq*mhH`(c08|bF90_j%AwlvAeyH0(^$N7bw zKntr_Y1)b;Fb658wqUI~nuUKK!H;bcsw&&(~KqIU<_4-fO}7&vaNtgR!#5d8`l z*K4pGlWYg&7;NJAuDSpSi(EH8-Z_n-H;gJCtOZ8<+eBN4L^1Q!h;@0WRIX2gz9Wdz zX4*|qk7Iw_Fx48=rX&@UlVcYRq;`DQV%wb;eMFxWG8^}n?;i2TJ_Emeq|6l_x5P(- z(&O+rR4JVj;C~c(s(fcIJLDfNFH+aD6o3%tI35PW1QF9`ac>7=asw9__Od&JcMAdZ zHi9=g?deWpp<%gIvO@W0VoNeZrYKDAw>tVw#ANunXO4)~BZw;X&SJhBGix{>1hT7H zW5!pYZqHo_`VX!!{-V6*f;FPY4tRRWTtDG(7Qg7eA6 zpW};W&`8^WKSoz;7nFpa?2mIAfzw0dLFMu2PV{m0VZ?-MdD$T5ZLKy(CSg&(mGaQx zFBTp5Z;?Pfh15RVwdbjhW_0M4^7-t4eN!0rmEk5^w={Egs(Cn zE=spCRe;z7?2Y;)pdLqoNmJeD2}mrJ!1!|>dDA!iE-z$bQVxG(Lw2)h_||1LXWSqI zqOy9Q-fD9=2N8x$53Rp*a{uOAS|?C}qcg=Y013;mJ1GS8;a7EvhVDN_!15|STv0SU9T8uOxMc6kO?DF;Ms-cVt!WqqvWPBuVsNTGtibC?A+J}#+ zgRGQD{_Y*r&oN*hNMHbm`FYIcyblA`Qh4>+1;0y6;EqG@s0~4VRllu@PsSoRI?=ce ziUjQowrXY@3;mrqoJ9htDkdQ;AR3v@*S|cC7pmP3fx#48T;<=fh@Y^U+Mu<^_EzdQ zwpbeT^5Petzy~u4hvU+v|3(5py&y0shgE6%JfLhj;Wpf{y+bm^jFgqnXfcjmJ|?bd zpgRyD_DYq10HZ*{6Kul<^B-rNcCfl7pD!8Rs=D7^v37gWQAQA~8a>s#zwUiuA*h1c zAsd%wE`K|CmwB-2AubY#gw$-VJIk?&?FBMb=7#BZ$I$J+Z)trXeSCrT=_WeED6^YK zE?ny}s~`aNKUJCOVR!M>D4LVx_5IR1;ZSMv>t9Y=Bq#tJMocSp;<0zZ{I;`6qPr&+ToK#Dmuun;33@!`%OsFF*qe(;IAODE zmZdWP_QtpfZHss*A8Z!qc`Nbq@sZV`!KtrC&mA9)h^9s6KNL=a4aw;w`>n#je<(&0 z=lpU5DEg~lnx|*dSu=_3B;QlJYajiv}A{jdrc8>M|=;=SNFC4Q}v&JpL&0k=z2Rm z8cu|8@f+PUODP;fGXR<@CMPNM7!ci>yE`A&&NK1n%Ozw@?fzT=8kwJgMVOdsG_$GE znUzf8TWyXay%DNB+_5?|$+CsuI)5t6ltzG*%QGy(Ke^nXDCm zR2Ml6XZ7xsc+SM}e8W&izr$yyTWij6$`105gDE03YK)oEnYq^MU)w!YpYv;I11@9zCvy(@@&W7+UjlHlJL zMdCqU@-b92-Xc)3>l7*q@J%;0?a_!w6NDWpl{?R|Pefh3e~+-gSM4gwNGS9z$KP=X zvs1oE^g}iJ3@`T+2YwWJW{P!eh;uJFdfxg&Y`m2vjttu#CnU2Z>UmAXNYC!aAk2M0 z601||Q@uB*SsVHC^raR`-z}*XwAC}COjH*U=K=XV%BR1@tQfziu!sT?4sC&S4xi+3*Uzwk;#_YLp!yWv7 z&H4+>NUmw^fd5WA?XiE=WPNHw4BDDlWa8Cte@1<&=mKcc8YTxTnVNY}ZnidQ+lOR_ z%Np*|v^+|O^&T55mJF#%}tsUuhrmx>94LoZD_u8`qhyflM#-t0X$Rt60zJPCXo0RoxAWPlF|EU z=HU3si-QPX2GZlJqWh@YZK&F0_d}o zz&#grDZdU5p4>Tuyu$E>3i9b=c|T)QI2C=zvP#lz`gWgxdWaRWKc~@h;`MxWwNV2J zMaDq4&*K)c0lc=|TB!qcLmxZMdQ|bIlZNMots3OqXQ9B0&9+Eet(!b9@FKPLn4=2z zt@WR+!$*L7xN~SWqUxk3Eiu~P9=b*jqvSc*4665#e3YP|AU5`WnDw!g!+Z;GW4Id! z({;|c%D)pyKiYw0DN5CD z#W=;$GX~k1E|N1I#-?UsbM*&VW3rABU%(#4X9ef`A<}p%YXIxUw`n#az=Xe6 z#H?a(AxniUE(~(XTJ2R5ndkKjpYtne=*Bjl`_WWO$mo$EL4&BV!_o|4rV-UAVQSNU zI+jmn8}4JNQ*Q#H@aycoT%msp>|^EewnNz~(%L@D*wlxmPW(<3<6jo3Vf^f z_wG0rYpk>Mg+5#0Un8l38IqFsuPw+|T%D@Wxzeos8a(-;3W#N#*t~8Eupe~4;miC| z^_Fa-5ZLnW3#%k%w$9lR3yJ8MOYJD;QHl3fKq(ikJ_M}lUhUxA5skErM1|%|HIQtS zo$lf9Vsaf~n||k+J2^cqyJr6HM9M_Y!PNWbFsm$ARZR{`-Wp}~|9SzLQ0*;d? z>B~IZ05Y2=B*N`Gz(f!FCF;o$8CVewJ`6m$kPt;yS{M z{Pc8t-li@7{!?(pm_*3H$USJbY3ezU8bf7*TqpYwCtjjAbmxquqUmG^(y|a>Iv5{t zWFTslYfxcK{CX-J<S)`0Y(uJ|j4H*^7ZeDV#3>+?A>q6_L--nBM5LQdy3Bbw!T=f>o z)(}JLY&*=qdH2pg(;{9$lst+78+E^d(BJ8+`4Go5IDk2*CVtWZD93RrF3RvG_Jb#A z>ao7s0736Daq%xSF~}J3XWBv1)^$CP*>n;b9N5@G9+gz_^v2&$GP0i+AWH^iT2YSZ zQyR1Mw+2gKmKG4oe5GB`F!UD;XmLDTttxc^oGI`1=))Ha za>x@4Hk#Ef2xcl9u%9V(w-xadgGln}tJsOymqe;SfofL#OEm@)m2psm$ zlA=Bz!hDW>@n43d#JERYZ8n#b;!H1tTw5bzeA%7Cql z25IHl7#b#Rtg5Q~{qAy%bNkH0O|=e(pcAtGgOo^)2%XFW<|6BM!#>>uDwqnb%1p^n ztMR-blX6Ac}!bC&a5aP~`eG0Z3ckdla zDto(`KuGnwar>Z|VzGeKGy1Nxp`Tmy)bXpT&eOOl`qOR~&sa3aG38_c^#`XaZNmsB zIy9F;c6zF@e<3>7?U{kBsFg#4C?MH>#miBL$qO4_^2Y|wt!|lm7P_C%(l&NHf<2E? zy`XKi6LA*?W|zP?&ZYmp41w+B1Yu;Ws@JLiLxCt=L^g}aF^<yD|mS3$q<;6SYd9QKj0{8ILBWSe#Tt;TzAwHr(cJEu>p>!pTW41GQj-jMu(65vW z05TL0iwK``qWydag1GxN!t!vdu8JXdNhQ^5oW8+TVL~--A2KNv6@j z&1E^G`pzI<>DFoOh*^|vEa=-C@jFwf7rPid_evGLzQo!7P@^E#NTvWlGa9a zk|lAam)Jx(frlUIJZbnIbk$~75WlP%?Z$p^)5B}v>5>FQ_x@(Lr%cdlN<4bFLsh{0 zTe1XN{=OW`nHhK^e5@%o|_&jGvBDP@HZ z^jL_{j>yD$ydRBeXvZv`IHh9p!u<=9p3QLNP-H|cj*E`x#XZ_HzctgmolUZEIEb}h z^00a8(!Wg>LskSs1=bz)#WU~Kul+M}F!HrdKY zB1`LMqZQwj`NU^h|IqaZz^g7GC9A6nB->xUI-E74D*du^eHQ#t>)%%F-aH*tNNjDe z=u5t1jD89};ieu;#W_!DHvtP6;yuvPNU*XVSeIny<14Fh{kz`kGlO*YwW1z{?9H$K zR> zI>CA1JpVs7J*=JnSj1-0S{GDU(h?S7--RDpUIb|BytgR-Ae8f_P-niCK)$}zs4D50 zBBAb{xj!eAvW^p}-|?R}1i}%7 zgZDvz9}cAvV%U}7I^vF4aVpL+uV>sx$ji`-dLs0#2w-l@$;bo*vxplgi{Q^}_mf#>s``PZ zS$mji8)rE}bWU;Z_HI}ye={6=d_K%!qZaQ$85Fi|_xWyGMhYhkcd4R4;ZI)vQ1Ydi zs(|o4{C5EN=*WSv!g`DZ&3QEa$sNw4#nZkOKz|NNE=kXQ9UXlEanj~n{YK0tqmLR+{TYx;VxEg z^Q<-~pTlNPA_-b{vDy15wj6wGEW_uU>wK$FS_)v6|H5P(c2YfMsUO&uFKufifH^^r z^+@WopIO*0GHfKs$DeUw3jn+?vHQCvtenOSjC7kl%S~`_`nWI7Vi%nxTJAVDdZ1OM z_MeN>o27Fwxo&|JQ>rM**SI(7B33ZKr?pM|;;t+Xsq3Pk@~kfpJg~p_JY`44Ja+pQ z9zq=<$&CksXd;?lUwSp1wSoBzDhh-_%Vs+dRAgSAcPKgeVwtRs%RNWdKao&20hXgA zuc*jpw+zj6F}Ujc<`2bKhuwregRBl!Xx!bp=j;&leOYS=Y;1Ghb0*?ZlBDj+l1qRzLl>52Q}4!5VfpK0*i zvHJu$4Hf}3xbyOeCBg4jT~(F!<)j}8MYvU0Mst<>T5uP55d_C%DDsqZU=|mK$~9{C z7wsvBG*!g+i*Cr|jY3lhp@!fM5EB|oQNC0$kKi9jK*3u(71DP|{$PSQlwWx8y@(Y~ zG$gor{g;rp3Z#F!wBv}Sek(Xy+gIcucJg4Tt}?L)TAtwflN2FYA93K_Z~jmtgcfmg z2w{yKWYS9%|Fidfyd;o%@7x($!}ly{sT22tVsm5!~Arh>N4MW%}HkRNQ;7JByW4f7eT ztM#KzwR%wcN?~dZbs1cfh|}~O>T^>M@tqDTFm0n)Tj?Qys3k2C04!7BP~_Z&XhjC$ z5EgMCRxN=C^?}1NZxbPY|zr*s#n4Eq{%*cm~Aps0F z72GuD9ssYC5vyXgt)WC$`&j~F6s^uKSMR!C;H?#tk#VtWk(~LO8_c=m1t0zI$UM|v z{z2rIfW)1tc~zLRpKt3E@4-I#m5rT0ip3xL5^L3AnxcaZ*MfB2m?LYWg_asA)d!x= z)h^q;4O@LG3!V6tw*jM3Lr&*hPk(%|Msbm`4RHtaqm95 z)=TxlUL%@%)33Uqpi_9;Ci98!{-MiwGVv{cmudu}EhuoQ{^$t}Z^(+D`QTh0spg^@ zr>GggeK#E8|1wOY=aC(r&y;C>i$}NQ8(6TIWG1@Axr`oJE~V%G3w}g;f~z?g{iu~( zM9?#oEU+st+Cwc-*C^u*BF`NAkLU8PeGI_5{pzjIX~mnj@dVboa9+6f^x`cemDdUd z_+`U*E{k>sb|hyv{Y7wWt>JZ?r9{tLD#_%zv6s&s=gW6n`iw(Q00?x99%Pn! zL8sWd=hHUyAEV1V)`<}OVl`I5In%8oppj!xJs`aNNZ1r|b9_q8N?1}BAY2b)r}8|@ zODu`{%!$d}{w|;bPrD|5-c4^{@eu7z8qjF%@z|d}?Y@4)_q^eNbnu@dD zRM!R*;~x2X`fD}0key4t-#AXZJ*+s1lP3ze)>lhiEtdCtBR%kYymeKB!t5(+oO0*f zcUsmP^?SaZ;HF&wxn)*XR&-k=MtE?4jWyi_Q6^FUZ zlxVE@6w$%f!5QNGnue+r>wCG1HwS(jGjWM1uRW4{oT+I&&k(Y~^{g?Ddwsy{tCd)5 zqiS_#_wY8JmTz55V`zTUmud6zvf7|1jxBNhpOhiZyVYt4Q(&oFZZ2wQS*F< z2W~JW1D8eHm5{y~Hn-c%2V^=Z)#lONHxV0ouBAb>yg6;_gi(9)GkNR*_PYA7UEX%# zt}xlA)W;k;Ikmn{TI!>sDUnD0aQo&liSEO@LaCWw*sHUybau=~#Tb;9G43S^)1%HF zdijMen@$Sg+YPd+^+jg7L<_M~RG$Zj`pgiqg`8FB zEvx0uqbhr^@0Ak#48aGc#%@^+znu>3`OQsDPbU0-gzu4BH%DFoENB<1JF^7M-T2s8i*mwP zkTnhK8g7X6|B+#5BwVs=*~9D=$BUKVEtERp6)Y%LSlsNS9b2|vbI$J*y43zgbrt9w zz-yR0@0J_CwE6u|;e{W^?HEbd55&x^6|9@YYyF#M=1IWwty5ORb{IF?=7gLu#6-Mbj-A2x?|Ym|wp1U?f&X2R_p(lg}DGjtsb zyMl4VfmNUTkM$X%l3w=s20&>W<$oUwT%B&=eW;EF#j5}8;p}*X0nsKj8nv_IF|mro zI>XkUWVyuoa1yk~6xQAXHP^!ZP!I`M%mZN0e_5AH2l^27cr%(jalq`f>@%M+499XS zrR`!?N>}T_;up)psT)_XH65KYaHi-S65$`~{5dP&)8Og3 zYr5{T79pu9$S;SMioJIwL`j(JGtk6u>D=Z`6BT6H@LEW-J(QY{2&A_ZBfj%Iu??#DsmtZrDod*x%GrXHg`*&sf?K4|1rAmq4R_ z*TzUc2(&)Af(X~3Jf>&MLXP!Su!C(yYG8l-bfW9Kp+{fHSCbC*WDzRZhcurt$o}O3 z6Y0Rc9b9eb)Y8EDp1vM4gM2Y9i|JTtgeOZ)p%)<}%^tL~art{Y+9E$-Ebox!W9 zmH2e)*=BDC-g%aRt%0F!LEW!sR~9(wC%g(ezsc4XyDaV$?PLT{nA}ZhU$kG?N#=U+ zoxv!(c`6_@aQW5jVy|n{`1&mp17BT@ha0D*1WGpFjBuCJF%FT`HK$JzNCW*bfWv9P zX!8If%tP{!$`*X1Gh^m6($neYhkOtA8!nff;3<>9W@o1rWv+1hs&d=w>nDz`qq}1J zou&F?aP!eIG5Sf48uGm#K70sV{0q0si2^H!v&Zhe*enZ{Kl6*_@{PjR66iiKSbv|} zwrAw6eP_nM>@HP^MD&tHRl1F)O^-#K3)Tlb>-B-sO%>rS^+;4~?QF_z+m~v|a~+g| ziiUnB$7l+t`0Hh=1yyO{Gx%85M40@=SF%%q@^2&#L_BT?(Q@l}v@@F-&$GP9w38&) zqvMRE8UIWG&oZv#o^%Hrp#JnbGt2La&xz z9q$6~%#-fawC(?hXfHD*5gtR;?u!yhwJ5U@b@ZU56uJ!6Gy8=JPbxp6O7ooX@~ToY zwl-z1kg3h5bS2(GoKJ?Nj+y=70X1fBWuwJcZ0JRaG5yNckx>&3+xt&h84 z%8sHgG=d1(R%;GcunI4>7J_!<;mO0!UtRgz5@)DS1>%2e6ht^SJ{cnTE&X&~$s zgCYOk^-#M7Ls(m$%0~^-%@Oe~dI8|B$6BmV9%60VR+GY>oM>frVLvG04-i*fN5bX1 zPS_wWx39wl1t_!$s}?;27jH5Vqw~{4llJyzRq%PQ#BjM9;XooddI>SXmh;N$@KGBT zZ@2%Lkia-$0}`m&bp=I5vVjOznO~L*efbUg`5>>%!eTo|xFHm_0HJqPS*P9vlZ1c| zkL!+II+@@Ll5g(iaR>!89^3n$3_Gi_8$xLtii=5((Dzf)vHYzUPqk+3xY%;FZlzx5 zN0}`X-f7eh0PmhV`(e1DXthGFw_|$MN9z}EB#dp*C&5KVSoTkjP^{_M5GyelvX?CB zFG^$s!|4jAQ-}CPs{Ef|Bw=K(Yhs~guPLCyT{WQ(i6fAtekC+zAdx7$ur z=h*0r8* zBH0g!PolDJSo*qKUM=*d852~o|3?Vkh_m(ND4a>Q38VQYFZ6u2@lwoWJsi$pVsJ9ptZFLG zhC_UG?=&~^2guqDAw)!q*&dJBd;`SOE-Y?bceor_c5Z+BcDYCMHUmXuZyU~<-hDV} z=&f5yZS=8oalLty`9O<6mQ?!=$R9*dPaR+h+PLFa)JD{is;(5WqKQB-mvr#SwT)d#P# ztPZz#og(0VxrYzd9zU6?MCRw4%lc&UN(Uw%S{GvrLT%Dfk*%?(NUp5F6S1eRGBi z5NBj-(~3XX`9Zrro!2v6KqeM`t5#4Y^j%B>%U+iNDw^h`t+a|@2ROP1Xjh0H3frB} zY_K;t*t2jvxIp&IYMClu0v)TlyU9&^ux*(=>Ku3T+f%iED`gSuW$IO67TaPd^H+Wc z>7N$+mQZN;RUJs22J;agd-Y1IcXGjk?_58!~Ye&XDmu#&GKz&d3$ZT74hr<6eng-Bkc(K z=o0Xf1eoUmqq1tcNlHp8Gh_Yv32DsW-$5QYcMH@AiyAY+a+D5{VXEu5AXhRV0+*nmDxS2z=`sDoP)z@Hc{k$p!8NoWmO6~GtY-%J; zvs}I&7FA92;;3x>RAWhg#oO4?#gN`~dgwH6(1HDS|zO zD7tYXVs6el&0T(9mox}5XGx5(!+U1n1>aYOnj< z>u9MM`o_$GPu+piJ&fr(SY_d#hyRc+R>r?JOiYG(d_%2uGuT(L8SW0?g7bYKdbi|urUj7wbrQ!Ub*idkhQbE<$;f< z^tlYiW*l!(Rt@_XcACU{CeK_e==!Z>rzk*f14`ydFjBM1bKPIFdEdyOXL2f_v5VoM z6ne&=bDgkbM(HK|;d->=Tus`3(R*r45GhR%irm~hG~Phr&GA4eqw>Gnzzl+_HWloc zFb(JV;Ejs?fW*L>Y$72l{+u)?2cUGrgWG8g5HjV?3$He@lj)S!Nk7j-kwj^qKz&5b z%py6$4##nu*?-0ItmU>g3sH7TmL`&FZ|JcFIWPhb(A&s7*Gt=mPEj3gEoIT>$^H{k}Gi2Za7n_RL~e zKI{fP0=IAG`vY3ICD(*3@xsFw10>1;~or+=I{OxCA%BR_bI{`qGk|#Wo8)tJiI*T&&gF@Uf$q#)A{e(mKewM z^<(t~39m@jzeFca@l!mBFJ9~}IZ0lr_55UaV9`WotOC%mKlB^dEORETc4qdh7C&u} z=T-g8Fzk(vi!VzlfY=bhlfqh_Vb{iYQ+*nq3b@}baj3Ru5>q4Wbxvo@5AEnYznZ`& zBQtrD>D5cnEt99EST_fF)QXRm&+_zJQ6F6Z(am>u`82{>|zX9ndxnNCJnYM7RFm>0-?BErckZ+>}gFx#~b7hkWCDC#X0y|AMfwzlDX^c>t~uKlQQyX>K?n>vg3PN z7OJwDF^AP7V2iXUx(`VUIi^u;Bhn z@i{q)}3ejPC!J)B%k;dk#xC0=y(v3*xnRiPs`FvOAPb^mmsce4V+NK>-5*|y`t zZ}r8^U-8rTTQxM>g$72b`foh`Y&m;!-(KZ&m8M(K~Qkf^bT?YMDsSJdeyqYF6$!8LT-MwY@7h(kevcr zoVe*`bbngN>*JiFgwHW-^NfP&!sELsPrO5;&aA9I7t>j60aH9^JJVbFeoy;;ow~RU zK`)apl%%z*A;krFyu-!ny0zIqqfOF_* zCO>xfuo14$3L@3q&Y!|mKncRWI)2CYwZvb=l3z7si`!5Zg>fCXPsYl1wWQEvkCc)@ zbca>EF1(j$ZTk`B^r%a2Qa$f#ZrVgy!5q6<;k?h_+_Vs%t(&bCyJHuAo-E|G@6}v> zeZurPT#G}Otj-Y&s>J|o6NsIj3?ZQgIbV+Ye0}1f{IMXdyp?vAM#awEInnHm!fjtB zUXj(G$o9!f_g-dIoIT=Ss_Q3%UR()K60cDJ<9vbNHoI{wU;93}xMyhD6Q7|Z_4{x1 zpgYEHRBCKSe7pAK!fY<8{CD_@9AiXHP@&~Vie}Seykv~;I^M>5G z@E1?}){TSpg!<1fzdtTYXP;f0!pAZ(g*^RWcH7X~7da5>{gMx3#lUCk$i%~cs~qIc z{@9_SyUohC=^q`B+B=yo(c|~+Y74)Q3pHl7MNDbtfupkZw{fM?k4`X=i6IYWhWkDak ztkNUHkiYrrlBctee5l)^iK*)|a6@HIpuH&Sj#|)U>A(1M!x~*ETAKDbZ9294^B<3GeU~~*exstRk+UZ>l@gU6;N|;Z*a}~M=vLk= zDc$P3uNMXuYkkT&jbcehAS;bFKf z*)5I)LU~Pl8nn=lB3E{ikEH@vi$9-EM8(fNOwu{PXIWtj=8H=7Sdj~thP{G~G;p{4 zvBs|=d@1O$%E>;y70Gw4nEkP;m5&S}&X|$f9qyO?9(Pgu%G9B^&bvD4uGb4Bc{_w5 zv|-g@!B94d;MCgs7(b*Bv66wjR@ z^9B|ok)M_%P}BchZ1$PQ??X`LJr&;DRStUKu1}45Fgf~iqx20ZNHu`j=XmAivDK`{ z7Ka!13e->I*)5d#h6QhOs`n((A>4QedEo zTpK9356id(+0RBuM_8r6(F=J?>_ znJ$Cxc5?mnDMIP#H)>L_4UH0EJgUxw1WERU=~qtrQs~1WdxIW7_RDHlKG%)bR%q7! z?7^BZmTdAQooBh_8Mikz^>uaomHBh0TDS#2Evin5o|zfUsNtVmA`09Kzy_PXD3Rv` zcFB$enEWdj)%I6`QP$uY^CNb@8AZ>XJ9jCm@=-=T>5M{rRO0!pxJPZdJIX!+cW5W3 z6w@NF4S2TcrWI(k$)@desnW;;)oG*H!+Gz85L47nsH6g?}9EJGjq(;lzA37Z$?B=Pi(z9cP-}Iw{PK#{{(PP7%-f!8Rgzd zO`7c|!5>Lu8d+N40`V{j*lm*usF#$T%T!BkoGnpY%848*4{wie_N4oSb**-pO-H=^ zc?EolgjTPKDZl5qgr+E2SL(apKc=hk#tvoVf@L4`=TwpDdLB=&xV6~m+LRVg>Art! zw=1rCb-i_3{&G2gDGd$gc<zc&B(_0vX^Hz&a6l6H zQL{1xE1p)K-evpf@8V@&fA27@ zd3V*$Vpe64R9cYYI07fAgx4r~&eO#7iD7N|O ztaf$g%9inB^_}CW3y44cuk;=ho3cHtHnGx1ZILfm#4CML>Knf{M^*8QxVreyuAt-= zKd+N8@Wu9l+A z?JqXFrj}Zxj-u(zq&s*%iT)mgxp6Ck?{*$ zUw=MEr17o`HnSZ8$aK#sp829g~%?;i&leU@B({b;XR6UbK^VdHj0w|7#tkj zbbE8iWKYz+VA)sh?_*{y!qT@jKHL7k2z$%8sM;@TcxVL?L_tCU1w@cgQW`}GX_x^K z2~k==kZwf*rKAOH=(u$Kg0Z@f@htvc`*d6Yo@TTYG{iD0|Zfi=qeLXWfReRvcNy`6hqIU4KpSGYQ z!xd%+x<83|6V0J7Hl4N$iZbcGa#D|)FN*Jdoafl0&Ah9OoyX>ysxgc|Q0(}bx5WOEtp|F)d)7(D_R{h&9_x|6tUW$Fcjq67U)N473 zYqMNA3b7P{=dio#50(GX6+Z{n#eunh=nSULi}eC|B8f`UR=T-*)N35-_c ztwBrTLPKbe|D#e#KU1?3GC`w~ScTaZqu1Nzg(Mya)oZNYg!ZIs+_x$lew*=7^ne~u z#vCZK28CTdJ^Dc))&T%i+W{30NX*^Vo2UbR{ldabw`OF8~YLC5nD+Y9Sn z((Tw}ckt<0N%UpwWzHicvhVr+GsktM&ZPmpJKa~MTz0%28Jh$TuIm<38AN$s2hL#N zM{T%m@k%r|SCppW%W6i7e@#Q%bh#evx;2>!j+fRx?6Qqeonh(uG>WX$=R9*rR|oR( z_Z$d<;KI1GJMjHW6QG4hz=^-w%+2B{x_`liokkj~ zSOaa)N0VDA-F?SHJKTv^>s+%(?f2L9M{YPxmOp&`3hCWNF}wf2G$)Bzk0m3Qt+hiyX_EmuoZOJYfdHPzP$P!*AQT;5X1kc%O=(6=+b%K&@Fdl)4q50|B6nX z${LMgq#Gm*YL)3%i?r!UN^2C-5mbb(@AeQ&M@hf2{kaUOYL~lNEAMjs=69GL(x@k6 z4?BJ(muoa0-WMF$ewyJ{&uDe8M|$YPg1kS4eA0vLfj5s9E||WX$ntCW)}DGNd#3$a zi)v8#Ogk&bjn>fK>N72E^1Z%~WatE{9nG^3=C=;dmu6>HAt{09i>=q*26;mJ3?iz? z_ACA4|H(IbW1+jA41BZb6{Evwc@Je+piRS0<9tb`V4Ju(16GNq>iEy-hW}g&3iB@#25(`S~<11wS`XrGp@He7nmpHhX7x{4IZw;X`Sd zRsXG-)9wWq=e{d_1*ON%MOu;$`fs15FEUWpq{pkYX&`_TrG2s+iK53|ezroV z=x;6-rF49aN%#LAFLNOSwlzMPZb!H=CgGWDIVm{bkV7qL?ay@hWLa-e3&VMi^_Qzy zDN(z&_RZIUAJ)iLfITtr#`I@R@^p_k(8e^YX}^jT-Ta=}9Tj7*+-6X$d8a^8K-ou+ zfM<6*K^S;O6dYl6wUeiIcLW_@uY7f?GByb{5o$bdz5Xf zyL@W|_*L$oOj(ZYS06vcjuYms7}g7N3C3pRlENldg9hw}UAS;0w30&q?`J`r7caWi zhhcfHj%oaAqMKn+DK+QgeCm$dGqXPQS+Sa*=)$0s#2M%)oG6K@THVPXBwX31;dp8U zqw+Sp&?_C;w;v%BCM5rudT6f^mA-TI$RAp?bCpIK77krU(K9S+9 zMgF^5+J}btlweSq#R8L*LnvY zj6ELWVfweBYqx4M^}*>7C%9yL{u2f?eVC?;t7`i;|FFtc_xSoOnozs1Fn)28!6iu36B^^`1gK6C%lKj~uV4HQ$u3?$ijYnB;Qy)f6O zxc2WRPBmucPPeU!Z3dx+ozZLeUA-bz=fDnm$7VPqSPHK4@N^cYKak-4mzt5STgt?D zJjNFse6j&9UP?Y9m<8wf4@kF4?cX4qX0U_hDVuPN`{X!kK4ZUp<2AAfs+O4OqXr_C zGoHj;1n8kUtlks<()P~xOs9A3Ivf-D^r(A2ESC>QeKT-3-_W5?wZIUoBj;=a@rvn7=!3L6I6r*qzh}PA5c{PA)CwVFtk|XaT|9=E{Gd>; zdFPlo+M1g`z%H&G#iet#OMD~nv26o2Vw-yU^l9t5OTiz0A?PG37tZXIxWSFGlKqNb zMoLzSA_8glTt)a;$+ z^n)r|`qQh;b?q1YBIXF$e`J3v90KW?8>-yzDsB!8&(3fu?+=|-u8Lq^bFS4`7TYfw za}hwY1{me(^os`WJ+y~Ilarp+q>S)~{sMlZd&OgReN-})yr=3G9Q)ne9|O_hUJ)l) z3{~)p&z62#vUoMMfePp8zG->~1%IAp%X(ghW`!^-1n^&z-9D{Po3|@I98i>gvbu0|MAYM7AYs;IVr* zgN|uSQBUU7Ir=W^{2jMYdQ{4tk_;CG!SBz~ec4~EtZo$MyX7R zW->*~PVJ6FjJS*4^%FyuQ?4?YLYcZ#Zx{Q9M|k7TIt#6JSs){KnKLMFJS4K4n@U?j zSNzUsz%2~zwB@nH^YMvV1j=eoho>6MdP(lBXHH69Ey=CP0C$s;iM*g&qoH0x69$A) zELZfysAi12S^xDtot4JOO??n>BsVJy8BI%V#pa^*c52l^*f<4BswTyATukoQsxFXq zL0POMxwPY7zcbS?J{8(;uQFN8pL6Uu; z#QSjd#)6BxK9nZxn#dwEzJ_G1;c>JpofFe|atpeT8-n}O2y3sh@rSh&QvKIE2Hau;d2igvSZGnr*S-GtjV^MU ze)zM>!Yhf*ml7qOt^A!wHs63O(<@e4%PeZtnh6_5}q- zC|>rh)XKT%u3lZy``2Px>Os5vd-E?(pF|ox^jVx-TmrSG&pvitK){BSk@p1ZytPtC z?Og325+7Gd<3c2UWe=w1>j`N`DRpe^ik}-V@R}_59J$ba#}#iMC@?0FFh|$ z1(wm})&L|6#+S@Utt~RBs`2WsO&pgqtSSGjUbR?V%q0gqf1EW#se%kXicrHLT(X_A z)0flK^(Ryy6uCVY(yl#loBHu9ua)?>Q2Yy{Ii_NAjL$YXx`GTy4j|@}#5q~lC6)gv z)W+Rmi$cM*&_^hhlGH>719^$HxYdL1PA0g#H#r~+TiL2~Q{XmT_rR;p6OR=B_)C#* z9$uU86?&{uQ;}GE(_yyVt0GexGgaZ|1s{k}q1Z>~DO;6nzh2d`UFcEH=B{XT*4cFqs!~)`EFpcj4$Dn>P(}IkbdKrUXIAzGyDC>kB}KdDw;S*0en)pj z`boL?y8oTgvF_5A@Y1Wx5%6|Ho=|-hl^(kK)4HFi6YnSM+Z(7&R*O9UPZ!pLy_d$9vAyc~XOlvvPr>kg-5U3};i%n3{{x zT~VxJm`^C#pD)3hgs40P^VBosBz4K8$(i_?;V(7j)%JfFPBm=2R|=_nW|23x;c@&v zTb2?D6{Q#7Zbtq?+LI5?zgu>D`ZRUiw&^lsqJDhieBo4P68sfP-N7|0TenNp#R>yl z_pVezL~h#E9IZ$5RqS(UD2no(=$>y{fo1(?-wZXo40Z)&%@DaJF<~bgbMP-_ z;`~_yEo;V4v0>4i{G|NFL2q~I6zsNUTJWY$#3>R^?;4mbQw$a4haa!DKz~1qQe|0i zDb7uIf-$7PtH-Ka@G9@Bg}{X41BIwL(`&lH_Y3K_@KK@77Vdg6{L0@tmhPKzbh8|1 z=n!G)t9}IAe>DJx@mVNrnjWh?oJ^gtEtjc1$S*T)2+@yVk|-MceKXQ1x-3eM1|*yM z>+csU{<_#AQiM~zy;40wWY=Y3PqV%imh&5lo99GjIp`rfaTv(4Y9JbMQH3bGj{iVAeo{p!{ z;*|(b3dV+dup2q8^{di-; zShTr5U3guC1SUy{;u;F|=i4a#&g@Y{?bj!HL)Uwy1h@>G%|457ZJ#S^(wkREYUR1% zilUqYr@Z6#y? zN=aX}H-F^dfD3Ub8C6fIrKNVOKGL{TpeAv|yxITssJHO(Y@23T&h>DPifmkd5J`H8 zY4a%^kHvOAmLz23MDiZ^A)V&-(k7q@@6x>xgKD)U^^e#TX1!|*8T3-@58bKa0nY0g z{+Y$FV>-}&j?-mHA8^AbUTqGqu=18!g7pqD-oToH+Jc%f$?lU&yO|MU9Zig- zn`a&8#M~x@Bb;R}#IjsJUa^wq==9AvO|R zJ2?})5V!5wGjeu&u7+t;nCXY6U1Mt=taKdFlPWmu;K{Ge`DXMVXQE#6KTMOR|LVeV zjT(olwFFoE;d!a0yzk9*i!&|dbR`eH4huCxXyWBoG(u4*yrkFEkn9(CC^`N-^D@ce zk!P$iZHFTw!~pfIkA+5+eFC5*Ab!;bU54zI?vm?1RyDXCVTxv--xTt?>mPk( zR>^!MKW@HsgOgQaWLgI%kp#^qikWg-Xv?fDatu_3ViGP*`f>&s>KH#Q`y@HR;h4gp z%n)en|0SQg4_7>J(@VP1@Pk@2kz%yRoqqlh;SA9Yo`_q)KkHv8)2@2H`_N?QG!ULHxS{5^Jtp3sj zbbe=HxiiU+Iu(y?e3x1>9#lytC`io34Nw?~-*>7kWJ81lx02*qZ9ZlqsqX08{h>LT zJDBG!T}n|gZ|O9Q`Fc0zCzNHSE!_Ddf-5JaDwmQDtgLb!#k0gVt{JzKD6%umMuuM+ zQ;nCqvzf z1^B`Hp2pp3rPjZNcdj)*J$BXYkUJl|;7@VT%uOvC6P3s_cGf{@*n~!_z)}Xj-l*$6 zY37pECKL|)1svJ}zbUPn?+7`xNq{oxG_1omR;5K1qr0CVRgllqoPt6TY_QN;TCL5^{NdamP2ni;@bd<<8g(GJZ;4BF2&iGQPp7>N zAdO#?EdXDZ?VOJZ>^ph6f)k~#s(o*yBS~j-C;QBb)oUJ&%=H=5m|SafqlrcUdU@+d zVMCci6F#fBWy@xx!Q^;G{u5AV@T~y&xNlj6gp7eBRNcP@Uf@^kzT4c{Y5Ptg#bs=4 zd}ji|S`6Fkgcvu?zG8-c!nBQos^MD!lz$X>h&LVvF;y+RGbF-hnCFH3TEjE{O&9T) zVuyD)Cm{uPVF}oBi)T3vCi|`fJ*M*SOSknT@#5*E@qLrrOJ=KEON9_NhFV5Pw6?~m z)V;o6NwJAUad{x|uu1s)?@3k65GowP(2_BSbekZattZ$6BCCNY6Q{AdRaZc=(8hZB~{aXEV=em>RFU&KDsP(By%*%vCmynx`dT?txh))Uc$MMp!CI}6hhr9m*+(_= zA2unLB911W&xZ1Z_n=(AEJ*oES6O^B+>4ykCjNqo0?l=9~U_n zKCVo9$frrg_Tjk{PIbdc_AdUb`^fbC67Emi>Ny{&O`phI34JNwYLF<+9}kFSqgL9y zG2+vjTPCN_UoCoKkW)kw8j;I%WiYOVQ{+BJ&0X?go2=A763m*WRSE*01kfs* zmpZ+Di##1C?pCbNX10;HWfF=jrT-WaSDy#R)k}f; zG83P%Xnb*b_t4C#@NX*pue6Me&)=H-eBKkfg*WZZo6l;SLnA0{xO{`7XKvbL zEi=)dZLPgx*A3>*Q4H7zcABgT8<)&?d^zPPEkCwG@8-N06D*wymzFm}^vNcIQ9_dK z`@Vm4ZgF@0mLAwVu&*##dRFmFzaY(GbmaA&XvM>q!N|8jZy@(X8!>vUiEdWfX_$4D@i#h$ z{ea1io9BaslgWD-fJ2K{Z+>Om&CH3_V@|Kgw)@gi{Ze?Qzer9&Tc-13K$zy9Ic|Z_Z%0^WsgQ!RM~hsJh(oF{HM1Y2im0ne`SB~r}=X5 z4oXhB6<#1A$NZ_Ce&+n+KnOCmw7gtZVnO8_7RAuHMe%z+on1j@!F&GiYdQ-xmKtlX zE)LvuU5@aC{!|a|G#GB$?*#Db@#)s$nuV4w?|gj)HMRLswsgD6PxuOh)jVefCnSci zxp30;id$a`dx(H5-oxZ*L?6O=qxF31tR!DVVj?ev_#f|x$Vj69I0@?v*f2prBp?`a z(IUgeI>4rR9Yd}+YUK#=&+WeO@AO$3CNw6^f#1&b*}e<1-sZmWn1)>cufXDuVm9Ln zyDm8u{@8xB%tQ)@2%o7&)Ns(+s_B>j+I;Ql*);>??NN@g95<4r+lPgPu?h=o|LRKQ z1^tR__c<1(TSo{W`{tW>oBLyfu$Ih5^Q_mr0iB?K<4-)Ge4gOW(~MsuHgkypgWI`% zQVX1bs(?9T)-tIVgd7cSPFkx0{^SiK9Cj1E8U_4^x%T~owP(ej5P_N&v?FB!*X*0;tF#>2d_E=up z9f((G$hx!w22hksP&Zd`E7jxxu*5p#{QK??{NLTBD);oBP#Eh9qC+$9vUZ0Y6gBAsuE3$>Yrm%*KXDsgtkgBXK8w~nl(9=oojP>|JE*ah&Zyh(k>yrz>`MQC z$Npc)$xe4^+hoq*^|p9_X4mCwxmy00EAP92WRAbRoalbKc3&FWde#>!-jP+K1`6fe z1Q>!RXAztGKFl%d9F#^c5MeHR$l#_Zo=0hO##J-kT9p5Jgd_o|TOa{d<&^LKH^4x^ zGeOF$7NHmF#~(3F{qqG4qP~B-(RByuO7WtC*TKaQg$fi-q8o}{gpDVCO7JQj=*!1i zu-rr}KjgIsy3;4L5^TVVP8D)NKL;r&_5Y}at;C(#?rlo)@&<)-= z_!v+t8k&c)VOd&cW*dd)AA)>UuZ<4jHuKE*Yc(}BVW6XhsDS$vCc@S0onbHY#XjQ& zRWA>p?_r@z9M8G>f~>E=uG+f<3j4-F)>*A(3Nn#>MpE>m`)r?b5>lJpn5h=+yi)Jv zWm&AOM8gR7++7i=O_&rlgsUu0a>18E{TN-FvmPF`n@Y00Td+^OiI^8#n0 zDUaUa#eJqUW!Q?^8Fh<2S<;Mtff6^n~ zBF*z9EXUP7BT}q&Zt1et|0W*k{E1(9wzSF%Y{L<&K*sI20}mg879!OTKl3>QW0^98 z=+MNa+B+w)G$ql0O(QUqSUEVB{tZhRoRG4h7YUfRLY)X<`BdqhXs9GBFktLbpgj_@ zicH<^qDMKz-tubcAn`1=Dz;|xJWVSvE(!}|CY=&su((XBm6T=cb{>vcut;wW9%(Ht zJ1Iat=iHaQuYFbcP>)0pkyD;Yy~DVtJv8`xXh~b^HbE&bTn&X{Ai)mi=sb0og0Pg8 zm$z$Sqot!G@@1FA(7#>igC!q6d8&BkS$3=sgAZh$_X(qS2kG%qj!CgUfQdaX#JIE2 zQeLCx>x<)W-$`u&Z+IK2TA4>~#L8t7<+YuerAoiy2*y&jfYPX2g+p#F3Dz1w0j|Vf z`)-TK2)yfG%71u{h?nmO)A-_=pwpNe?7DNFPgDvr?<3LtzYAG>=2;IwYF?5ETRw`q zmj`(4(jo&NGB?+Ku>}QhFhN3QS*z$;eng3mh!fqxt8+ z*qA39e^~yL$rsaZ0*sYMhM#JuLS&bLK%beHX3XAnkNWJ=9LB1kHoyeLQ#7=gQ!5}FtPfFr;gmaZ_E z?^3??MSp2i^6>+nUod`{))vE7iY?t_#o&9(7bvv**6U7MMc=POBT!}Vt$OU3ic%i0`+gJEX zly}mp(J^Ld0c01z?53utH~dQo2kS}~f{InZ&MVH(3)fH9z!DYaj{EKa5Ux8We(j8ftwj9P zyNO(r83#JbL`01{U>d&bp)cmNCQy5khGx%09~lt!z@;=$UK0Q(oF2q^c@ZCz_XLoH ztJ)YJkl+=U(qnq|<=jM;1Z=~a^aK~OaJk73>bNEEtwP^L&_N&Y$*#>)o|L@2d{;_E(BL6Qe~bwtUA6joa`GZIFuv!wVZy0}AIwKNDMZ4~@$OAP-$gpGk;v z)J`|g;(VE*z}g)&O19f970}}o6#wcpdSI9GB>Hn3KJzCaFNxEix9)6d3}CR}a)#Vp zD2LfAEGT}||I^pg;|`JB%YtPE>Ywr$%)sddWX~mR^KQ6m6b8E*_@R6zQuyIZ*zv8% z;x2)=eE+0a)@4hFMo#&tp^SGVTp-02kv85WeOlPGPGd(vmS33%uuWjR_sORV=ePe|MNsD z4GF^N7~U>c_Sm`{aKr(gi>$c8I5A2rd$3p&n1ca?Dgn%z*JWf{-klB$T{&eT6G{4q zap{lvr!A@Daia=}Tfhw)PPE?4ip`+psuU{Ex!{*(xwe1|#haEKot~cF5?#B=HcK%8 zo@;>mzC=pGfTUh_0`GPW0|T3ba|dj$Y{O_m{Dgz@mB<>7<j`_b>tnA|bb`wWIL3L@EGt4>@%rJoUFBaU|yk3%8v8a{=|F3kpObX|l3e$r+R zOqcV)`DZo9^2%pOXUmrbIF%fx-(GBm7J~-EHBK1j&pR@a)(9whGdf+zd2NwlhLeCY z6k4Jt^?p$aCfg32l)Y6e~XS-!Nw1zt&d~{x=EaRSKsloj6j^IJS%(Tuz9ux0QzV9$-%Qs(wmJ5dpv)KNV>Ro z_Qk!`-jUhL3;-T(UZ!`m?52D)lJcPZ7k#m}0Efc$B_5$AL0_~@&uM}UJp4XApRCq_ z6ZM+FBX0fbhddQ?RJ;9|k}y!VF#7}0ydSvxUtGhhXObY` z5$T^at;}tQhozmT2inh;ul2Ykd}inwL*;~-!ty05m3@6fWbbsw=`lM^7T@CwyNm~x zz{VxcrFYSU*w-IG@Om|J=(Da;8Fy?LcX~zW*6@jv$|>6|fAW&CiI82w%jCH15qL;Ise`45wvBUxY7T?#?i@GG{VH+&RJyPS9~G>5 zo2Pbq{65><{l`DhS-q?%^XqYemvmY;5lWRl>ZkC4&|Wt&bPQQ&y#6E>XN!dID9V<* zqaf-6_dnZQH+K)*mXm5%NeiyDT~!;H6uz#>R)~KJWu#jIa;+R!^sgCbK44XUvRGxK za}|PGjY-MjD@Y3Ry$}I;)#Z1-XVdLwKF3<|OFS05R9jJYKjY#vXLk`V7mvi}qTMEM zzMnro6G)s`dnekS;*8?Dx1uYtUgH+(-d1xR%Aj+!hI{l@*2PW^fx9ORT<_-lCul#d zsi8bm)`LN0Te_%7yX)6};n0~4nbW{aLYv02{*aqgD*u*qVRy-a%-G%@Eq0Y_7$=A{ zuBpkmc*^;Fl4{y;ZiX(kAYOw8a~4i-a&zmvhh-eGm%sbu>)i8}GFs(R!$CYO zbj`1^?4^u@M-wl0zs-Ch7DV;)%YTUbp*J z$Bs5*$V{5Y6#{u=>;n(T(4Q<0kF-WyzkIhJ10K6T<;mU~@#4*Y6ninc&E(_<(A~bo zbSdhsqF1^C`qd~#knp4|?mL6*_={2ncW<24_C04zV z6y$}f+meU8w|sWb*H_N?-@}2201BtEiLeUZy3-p*#ftIBP7FVvcAfuzXG|n-K;|!E z`zh}~!3P^s8tH4AiC!-P9QWtR*mpe;Dgz4T#(c6o0{MT^Z$Ft!^o*n5kLLbGe&3&5 zC;OL|BSdA)^!OM~rAV`$nNvHT=w4Z6J$e|+4W)$vYwhGP2xx78Y`DqT_s(VG_kuNf zG)oqezs&hJf*`D=SsGk&lx92#nE7dhR%uTx%3yBBHU_H?GG!k?6-i|YgOfFa; zN#XiTcg)Iox!dO7BeT@|`qQIMN%#-S)J<}XEzQY&L!0Xca0_dEzBl?SeEyQq`HR2` zx3n+B5a71FDa>^v5}?)#3f&k!lr$wiX8D|{1tZv(8?%Z9{;@KxYg^w)NhVdJP=Vg& zS~jfy=mc|Ol~;g0d3o_{e352{!TQN-yb8`aaNYXboIj1OwHW1qTPSk|v`u}?w9LYl zq+{Lc*~$)j)C_Xqa8;5;j^VEIYwF< zJn4ahn%m@P_8t8ICjF2oTmg0O%E>FJzfHgc6=EF$H0Z0iU`wPkQ*F9`|6XXx^$SuP zXi0G0mv1*1LcLDK7PM{tG2ac0CX3j`JB4Or`_cC7^=0q8q}EL7fnSx5BEyaXKk_tV z6*ZYozMkcOZx~uEKoDN%Z7#R~G*oj1oV!^ofc9AJvC8n%Hm84vs%K(hN!92Z2C%VR z!Jk>}moiRDE!~qT*m-i90R1~IMxBWYQw5F?>9aj&PPUL9g=2MdxCS%v5;*l%FKs3_VdJlcXHBRyjhUNQ_^vGe+?-a}XDUObjj@s{j96ieU^JvOpFtol& zYDdhcD_B|P&;LaVbq8yaH5p^AbYD*qy3b89Le34H!|q#!B4LR!?Sdy*gSx*oHC+5= zr*~WRTb7=b2RlLJep5uYq`jiz?RKkvsUh@lda^CVLL!TLyegfLT5*HcX~!I zm69#cP-P&SjQ8~>F$3f$Ku}@h0_b$sUNxc`pdH#%lq)e{En+L@t5jDav~R>6)RJOk zs8MfHlHc2UJt0K{@T+B!aa&SP)HQJwCPh+Mc%y zK}%7T=KsCN1VSuag-r~}Qrw@@-?di{n35CSW50AXB)r`wH8{}P{lYLd9scqu)`0|V z0Bvrq@&3u6PGi8c(o;ByY ztQg_kah)Hv?jK$cG~hl%Fr;c%ifWIzmuH9EhQHl^$0)_9$2fGsz)kr1R(L*vhQ_J_6VNFe$;OWP_G@1=Pq_3aqE0hl93!*;VgCu#L8hm4n#!r^%590p-x27`>0~cOG z9jQ+ZA|`C|^05CkoA$T}w!}KK4B+mwS=IR9WR(NP`pz`U%M5%i)!+TgUu6t6B80y> z#LFES@QYgEQU|v*ZxFf0D4Xg*gcL|iF9cf0hU$aZ`>yYwy z_-H~TN;<J{=so~^IxJ0pcu;0MExq4sIfliYa!O_nE=M@?q#!*v*;~dfeySs zk4wONiX$_gEeowV-IZ@(MtCp8ev^UQ_r4Ct*BUiun9432oaP}J$rhsji^om=!;i$l z6qE;E?#Co@^B^Q`tX@mS`BN{nbABL^D!9wZP{}58OP@x$CDhsK?YDRRe>q8e(=)Q0 zaLzv8_tXpp%$Dh2jO`6}eN<*Dof_iCMcK1=2uZ4Z#kgxm@7XZJFBVO_(4 z;Kh?@4CR0Mf6tsA3p8cn!H?llKNM~JZ}W%E2cGE~%}{atI(|3XeALwC)0Kd+7Xn!h zec&u5=#BSB)gjd-i4*7+IR3D5SG?h1*x<57ykXM`xqDmIOADZ zF)zJ6(_s_hqb`ZFse_o&@ytyvsE}J?lr32snl*%2Q~aD@80^H z6HCIF`uf1Geq9clN+AC$+yFR3`au@vorJYs3A2$Xl>z>Yi04CFt@odVGo?xSG}D-2 z-8R)0YOqSNwAekTK@s+Ow$Ke<=IB^?AP|LPf|z&dHaiXdc*7tg(+ffC_SR$`eYMS9-yIl&e`5`d3WE(G^(v5 zQ+3O2>SR=*K5)u2Uq_!GU@{nEmvZy$dQ%#>*XdbtoGZF&{<4=UaVTl} zj&AM#lQsVLZu%$n>4^DxmnRd#^$$u;v~H!zYJp$7=ip{dFs=Y<^5e1U?t)9O|THJYb#r(IRLTG%Nm)Q@YX`EEmz;T$upAM_RWa+U$;KU1)`?6-<|y?IJk+W3XeZ&lOBsc@ zM#FKn#Li@mR_(^Wv*s%+6#qO?{`v&5CJbAr9h@|{8Y8#KWo?>? zwn@?1#A#*@Nezdv6Hi^kYrO0ymabLQrD`K)6i7h0f|c!46BOiCrka`X3&g9BBFCgA zNbH!TU;8gm0k=&e)Tta0)!1ET8GG$mBKddwT*Z8#U7r=i4`3cR9h`av3kz<3_wp8Q zeN5}YmBciXpH0nmtbWkKUkGX+diad~jKObi=Uad8k-n%>*ms!g)XnBp^O!qdyR12? z(sA|gW0usy4f)JZd?I3L`y|fT2j`I!+gm=VMbqWhpOe@SJh_0&wtWa2s0XEPa_Qw2 z%Aqg2Mt@}(&N5PH2B{x=n$3PqTBYzFhTRVcjTV) z_6+)>Mc+7(9^r^;v;wFeP~_Y_9ZCKx@#Aq*<)gmuUfbi0`Mf03&vB+;Z!f7rCBWnd zL@0c2b$GxR8ptt>U>ZIi;(LR*@5NM1SXP&MGkm=kMyvilbJ zI9cPN@c#N_Zl)fEfzC!r+b@+?V>~0pG zwt0{5U1$H~f-0DH(HOMjV=UaMDBnvDs9hkzirc`>=+F&#M83A$5LlgwbN=2gZFPA` z>Qidq&5LEIRH9G?1gLi$orgx1UbN{^OQ-+W_+GMO(nd{#if;MjaT(4rp_rvpkB%zt zOtt;}(DU*bV6A>n0dzAAit}reGFYqQ_E6 zm}SwEeTaQB$8;B_O1B_=$?WYAv)5yer)~}k?O4dA>9~|&IcTd0{-tAkz~kY8HTJgn z8CnAAhltsk7wu=8Ze!O^#b6eDG8lM#DE#i`pVs|T!2a8}pR~xCY8(~nyT$4jS2_O| zTDO^gpOx2)-dFb`k3WP8z+xY);me%G(>5n&j#s*ktmX{#EEAm{$!6nYW}9~3ytcgO zRReiD=#j0z`P$@`+ghb{gZTm$LLWO*(K@K&Na1Y8yG%L?N&hQtqez*!2~q#%_f;Q- z?Cmcbzf_VtbTO(0%OUP8{TEF)aL{7oav?(_*xq^20*|@WT<*waSS_7_0(e?i7tDLgkP{^3LrOE@l-Z@5gqm+syB>2QLz%stR36 zjNGN;PBJ-EJt>@e-d$Q%bX!ipu}d1UzxTfdSY-A7ElxL5l7QcN1|Dn_Cv%R38pfS_ z=5Ku#M3b*u!GazCJ@9v5(CX#1-6NL-$1(axSVI<2y_o53&*w^oQ2))BJ*A<=f?&=8 zlabHRbZZ`uz#^z0G)Ra!C3h%cB(c0+nV#;cSLL##z{eqWA0MihNGi;*=l|lLI+9-a?G+r-8CsFUCP-m+A%PpF7>D}E|YG5A(th#;LTc=YVKgkwuM|G%Ad#Qh!`t?s9MW3gR8dv zoPm|1s`Tiu*A2_A$V{I5L8ya{wW{<`b|^aYTg(0xrRLM?9a(apvMaI=pu^|Q?SP%D zjrbT4#(D67>VFao$lWnjYmBf`SZ9%qW=W|w9mPNY`s~n_!JT&3DJfkWx-aQP_A`0g zT%-)RwGUl`1mG0*kVIW=@-|U=n34(ow&a*AXPuZG8L%nfq>&4q!^vlFIc~>=oYCOZ zxYW2a-`C!BRI+onCHVX0J7dE2447Cj2votIJ45Jg252?-I3k-Oe3Fo};g4(ols2R1 zm|a>B@+`#kivHbhJjcWy-Od{(fcn2z7<#SS#|@ivknwS#>8CuXXpy5{)Uu$Ye!a{A_4!hjgpIJ<>Okz z-Z$Sjdc)^fKx_(WrUsdwgmw`j`Y$*6M>gG;YcB1URn;m^O5QHuHrh{C*(m*r(0x`$V+-)g>k$-i6{;mM^Y2!P+GC54P8w~|5* zknwV+*Y797_FLMa{AsmVj)Ohc3(lZ>nop82N|C)z9u$f(c+btSrXj2DWky>>b-kDC zVOw-(lt?(Av6XT_5AMa@rnrcWW3u^ErP^z11E7&tjB(y;TU63c z^hFM3{>=oDHm#Msb%BHh(+ei@;|c+V%iGC~DcOG<OxI%`OD4qY{KHIa}EBL}b)WO9i?_ips zjg_5y>EG{U-lLbF#p{Z`rf!IdxO+Tu$um!SKr}tLY86WMi)OcYN}3rh>|kCNDFz*; zlp;9~isZ!UcOid3#*RdOhJET@wVYp0p)W5jZroPGOk^3TX)q3>d501nT?e&o{dE?U z8$BJ}Kmm`|9yrlX&2d0u!u_{Ao?ESW z`P<~)H9ADYT}rctFCj+qX`x4eC$;9H0EP#PBJI2gaR=8J~HkMV6Uw^(w_Qa(ec}002SAm zWr^zH!>vC|!FCzV8F2o8_9-uz0v|sCvQOTbC1o&Y%&JiRYogCp`FqqO`&CJyQPY(v zl1CF|PpZ)a*KAh*4^wX$6=nOqebcyx);8<*P5AYuIoJax%Y8=4x4><({m$jKSCtF$#Us- z_J?{BvZ^2K_FQm(Iid;*dKo@G?s6GYg6HSz%#xe7vz~;4)~Fs`w=Ac z^=~Gq7#Qxo48HtN3H0kScGGBA@jR?2rGOQ>y<47>SdAy1dk2L{EQo+GE8#O#Yz7Us z!&O_AyWuCe5ZdWCFF;jlcW$dQs4-#8D$!Rp3@#Y?Do1^x#h-URF@U_tejpz$Gn)N} zl7ge5nnaI_-O=k7A%@wF|Vcq%IIjdIB20R1)#PK*`O)fK$W&YuxEyhDF6I zn~g*gJ<21l_BF;ppv)9Vn26*G4C}4~fem`Sa?*D6gMp0PA9K=AMvnDbh7=Q9;<71q z$!%=sNN(>-Dij|eD~vpVyW9HsnHoT|!a^iyznB^zZd@kCmYM*i1FJICs_;em!8R!Xio@OJuU7$k<6s zX6mCxpx(L0w^nA4y^WuOf!qrj#V=r@$ea|(c_8LtKS$T9$V0p9JjT7-kKFdPp|vC# z@xV<)BI5tP{>XtX?(;)En_Txf9ndlVfWxU9Ip*2v_k1@Ry_xP%;LKsaCrUZ z5i($ThI(xN-Ih_5UIzM+3gzh4-%PF0xE+hqU0J6JQ!gf(FTxKOqPcP5PK}36ucG~& zx$3RkSt93*!KvyB|9^5nV`aup4fL9j9K5xbyuHSoaN@uchRbUEV1W1Xs z-CEn%pDl$)*y65y<&|0z{c7nlv29vZLg&&in#-nlF+N!5Reto0rZOD^t~e7Bd}S&d1OP;IR)h}`G@I7?tjw$e4U!E&BX zRt1l1-U7_9Jt`(V{pIa)n@2lhY`uT>R{;r|z7TpXOEw^Q6GpD@k(jzS8Lz61infdM zlM#1*K)ptk?t=b?t2)=rny50%T?ZN;NsF(UcM^8LzmaPI zt#vyo>%;X@jK5gG;leXlp&I^wqY9iLEMAIlvy_Qv73Fn6dGu?v-%=RLxTn4%%KPD_ zj#PS8$|EJGb`;dqk!aRh#@imfz?I;A*!~iyc0Gd58R6oCpeeQ@&y(HBIVlTn&LMx_(@oHWeuX-yq{_CT`R`B? z=|c1A{O8y^p`7IS#OeY$CZzE_5!uv7WIs;Ev7;Uhb`i>%zU})?{3b`-?%!mc-PSHc+Z*FWIkGjzO-pbRY8yW9pAN_u6UTVIZsH5YdJ67R3Qpz!<6f-vfGxNM_gFz?$!66)Z$YfR|6_Q&ggb}01xF&g4iAx5=T2=!ns$l#3mF}$YeAvaHf{MT% z2pXFu7{7-&Ge$3H&Hnd|RF8vs@Nf*^nEQ7q`g7{p;+O~g^NBa81esx(ZHg-(l6yBl zq)v+M5>V2gG_ijd1nR4=MB>FX=)bm^)#A=j+t;fQvyx41e|ap=Gt^W(_r_021J$Ip zs~_l6Q~f&TFtu!8WnhGz3mscXN066yalDjXH!4D+sY3Lg$~!?--;{63vL_`JyxTlq zV(JJg>VacNO{-&;VcJ95hkm+_v@Rl4laREa#c>jWVg>7u!!8Xt*4U1DODu9Ri+rDV z%K4p}#m88cud}_|`I;~9?D`99>yO!e(-G7q^s1z%cHb$iw+iW=svkA`@=l5u*^&TV z%l^jh+&8i+FTN-(WkVNQEK;~eCC^hxS1XD>v;mpS#DuFJ+sFtW2RKrPBAZ?CvP8DMwiD~)bgI8&W$ZvdKJ*_fnYm^+R} zHzJZH9R0V}Ps_l~O)dCz*Rdm`oE`(l+CFPJIS1+QSrI5B^aW0Veu&nJEomW&N z)ZL7szjK^@vZg^h1+^nDZKG*=<@m{y!L6385<76(2oY~dE~Bx`qjUr%azHNX+%N%A zHG#GmDGXP{=?B53c}2Oqa7u{%UpwD`1U8pX+fY^I^+RW+f^vT;AXmkcG3PQV;$>6Ra zWeF=OStoOtelem!dG6EBsgn@yM7B9Mq^x8tWWK}4{UnV@%MWt-+?xZW?Ejh)k0dc{ zLO6Gj=&coO;qe&>+XEIJP4mo)S;v!sI{wLggBSS!C zJ|GTmP#ev@aGq1dZ2DHSG8xn@4v*l$OqkCILHQcS;duT_R zD?txzvUVb@=k@BzhJPArlf=>F=l|JVx+%+tr;bc+8*i$w8k$Nq3`)K8(r+fGh(IlJ z3979-oWCob^GjSj(v$z4J0Ag=24v|0P-&R2n-dKQ);lk*hB>a&BrybNFq z{%WoL{Fdg1+807x#{0iwf*u8Y@ns?*lMd%TET0WknR8K|bIQZ=+SUdapH|;feTOF0 zaA`x#mYFI~f8)@#H!K%|^EUkV{kEC#afMb$3=3EUKVPG{SYws-yxSN?lCR$4q_C+N zgS!JC$?~BKdp~)NJcDV_udgp}?~@@`iAN6EhV}fQ?@!%_KDWLMhYvfd4D6U63tp)M zx(Z-@T4m(8g{|evMQ$%xfpD8Q?Wiy$?2pNLP4166biGxztQm83k?F>v{9gu>FA)(- z{#(H)`c#e{Bkx1E*( zV{i304%)bE542chJ-o5asR`dac99R_DLQZsN z%+(AmWBf3uOc&L3#^VsntHvK(`ud3JcZwA>Z4~D)?$}P+UtubvYLoNSxTrwN-9l?F ze@+HLb=s=JVsVA94`Q`@{(u02__C%RiDUh9dg0hm(WMTS5PAPcFTh4nbs-RQm?T>c zvzk(xfEN;$&yyRg9`BAzIg8BIpA*mL69wR9ljDC&GFGDJi_li~UqGCX5beBMD9dxx zZAA|zCt%xVX&(6LI?T!(d2whsrcU!@B&x9}vrcX?+K6fx{V=@P8014nU(ZW>nWe-& z*Uh%vFEK zYBrytfpxZ^Ki-@C7$AT3){EbXhPOVQ&SdM1ZSb-r8BqNDRkd8y%zo^u#0DlDhkBk# zmk~(C%Lih_wg$`g%*t6m_dr)VrO~bOjoC>5d*=flN-xO@572Z$MP$DD*zquW~iY+?s;SuAhri;s9lpOI zbqy$BoEEV?{jQoh-?GH^^)6rl3Hx+$liy;F1+x2CrWOGc&B{E%+b~}NEz1a(GxOCe z&&49i44>&v^)rZiS_faduFEmGGQ9At05opZR<_oNJsvd)Ks4%D1v&L9FHjyJkIXx& z6(2?^tNNFVHQpHKbdjgzE~7>quGWAfHHdI2=IyU$85wIrjoV&XR#}`xEWyHO*(9g` ze$sEy7w`(v*6ycEs`M;Yg4-J8x6W_eb)FnDYjLcy*9Hslot_l0A90U7RUbb&;MOlG+Ad@+xJ|t!^rvJyz4?S^Rpm-#)lgH(mb_ zpo?tA?NxwgymWl_g8Dt4oxZ-x8%ei}=8 zR5parrp=g7|15T6Y5b4W+jo%nZ~ zE8v)@JWeTT)$xhg(IhiZ6FM_T4^*ckgF5UQ7I;cPNwz&|kf8}~YU?>)paoAnkKL-2 zK0o?)vGbR>LLULl;j{DwkDrcKpdc?D%BU8W_`smx-Js0Pt>#=I5^K~;U^;kZ)D)t6 zGK|@j?dE)3F33|NYoMpDjGusn;H%<=F7AA892Hp2IR%hb|5JSF3&DBonPeb`YU;6? z;q_;8fvYA!jKzLjteS15l*o80jitVOEqyZ3cHd?y1l=ioZj|@VO@y|~JbMAE-x{-b z#KmxT3NhMP9EH5qNg!&2ci}AP6#7_qfz0pXF0gNYgw^R)S$?$`hVlY%rqrRr52L?clqcsMf3opfJ4HkKfcItX5@gog6R)BZe!B2qIY70<9>T{ zXD?pxEdc&0W1Ld(#8^utPmGV_TY)MlVY~=T_m>I@t=6Q@wnq)IYugV&ti-Zv$#Do< zEpHsyn#P{4HvJxxP~d4;K~_&an#_<)yqXpJNyRf%3_qEWGd!?hyYo8IeIr!CZ@#+# zHJs=G8iqRb-z%d!)Au0Y%T0z*EcL<+oAL=d)4{x4uhywZ-ri;ULo)TzFxQMDv`8}v zC7)n1qEhdXK_Z}zd^&7KvGN|t07Q7$r|kZKR3}^C1VsPl7OI$#Gnbd;1w5S47F4p# za?#$6)xv+O^ssX%(KDQkUga7z3f?pE;M>dUB3ceF;(R!AnVs)>{NHIhQGbE-Nsn-O z<7xPg>}!*viMNf}QADv2K(XP($a8R>@%e_Xp36(oRhuaWNwfs+;E&zV;*3_3d=ZK2 z7J(*n$Go`m)llYhpt z)X{_0ItL*3KDrh1{>{lGvui1p4$GEn&O#iv~uRM?m^c>5f|!ZEu>jigVQQ1Gxk1Mwqi(9ozDHR&Q0l! zqQ`J|H)Fr5*N8a4XO#2CEg&2a;)3S3k2)SaB00BD64)}QP10(Lnr8V|WdO=7D(^Dl zt)h=2lm!nkqoa3-WAXRRZtrKt5=~XR$x0tydLJGa#Zd2rqH{jXz8BT3YI7MgJk8q% z2l_rXNxYv9X{kyc7(}4MNoIFkGVzDMkhD{>S3zsR!^ugxSqED3#SCM*x2xe zy0WxUA3_`n3$e(kR?JR1Q3u|aHem~;%dwc%-v}#mSPgGE_rz0Peh7N}ygc*XM2~|s z`MGNAk_W`O5P#LBM!t*{gR>l9?42!ch=DkcD)i-n9;fpON`P2=0g@6*3nHyGuhk8E!(ev*B@$O3@oIN% zurs3>D5+5?9jU=OiV6=(IKGI8<6zWzuvu>l*dfX6|93%~{MSj(k7zkMmQT3tc1nIj z)MRAbpR)jauq`A&w~1nolr#$sBt{NyyoVZuiRa|7{g_od-4>;*lC)hv|MJ@4R+jX} zlZ^Gv_Rz3D1~Lv#y6O3nN+4_0ydd3F>~GbTQqvJWl3KBhIy z7Hlb!rZb|vp|ro=gec!My8bp*JcZimNr)(EXxO%g(vC$U2KTJ!a3X$)vymi~em0&KKAFe+u&3#qb$5#WSRkrGN&e2i}vii>t zdZtDnf&p7}o;Fwr@iAL5W9T#^)2`LH(!S_Ho#gR}Fea^rP*0(iNb!!i`zofCX;|3E6=JW>A7by?lwr`a8W|;dYQiWURs+_~=sviy}TV#Ft5bBxA zxjJ~f42SK2MHMc{P}6_Kh)kAU(#c$IzTo>|5I0|I&)q^Vr%Y3+_Wqkg@{ERz{09VM zcPsuu+{13ocDmzyd+F|G_=6{x8k0ly6U+9*`J@0SikqINbF>SXW4c7%(tAN6%}bvqT49ZS%l(oClLc+e22lg$}~CZS&4aZ`(Q4a4UG4eJrQ1 z#wAX@UV@|Na z=a3Y65T0}@ev4Jh==5~VqM&uRTeRDT{u%M*D{a%X&f-amUOjD_My*E{>dsdrK>ZneO!Q!125`8F-KL(TOn zF)6`?!PA{N)BV8k@^}uOZyQQgDpoIEXU{dStPfvc;$;1x_&&lIjCoTK<#|WD-_Abv1J-egNgmHW zwV7Wdv??*P5VI6!8{&?=h|H)o7s2V3;h=uLJR zM5tCQY~o|sAwx%&=qH9>&8>{xc_B7B9K%+PO-V!RTv}`b1eSMxoEKJbu{BBw ze2@CWUy4V6#I#FUwX3eiaAxwUE=GS1eyg_O3@1y3Qry*)lR8C2n9b`h;{{ZS>O)2B z6F0DNRAD7v0R4p(nn#|NX`qWKk(RTS{*qzUwu-|4Z_jI@SN8F8U5qge!nlnZM{Cj? z_Q|pH2vgHFw=8E_j#Ld6?2eRL_(?VAY^6d_p07YDx3=8^UIIG*6O}jEA{{LniC}?H zAnRt2g7fQ0QNlAw9@NY~>s))DN^yu=3!}Z%g|*}9+Pix0^H%wdZ|6!p(9cT`Tuutq zNy98T92&{e`Li?phRZ5Q)OgG&k+~lT-bY0u;BFw(?3QvkXw2NtGyl9DipdOVq!V8& zBDXP>+5opva(!;JXnkFGK~o=$`G>4e{C_+9oh*hd&Kb^AFb1Ma5xDT3W!1gU_Vt`a zpi`70g~cFxvcC)@{6C#XVowM6Q~A*{tMTomXm&ko=ZQam3}QHqzYGix$^aOSn}C>kK2iM;hm6yF36A(BR2tM|u?;9Fos;qR5YG&?`fBZqEN=Yr)aT_M8x*^sdzk@X- z@cxZKfuh1P1#B+h#z_4sPEaagMkx>L4lnFSw66#BI$|}#?s=a6;5-^j9XA>dW!u<3 zczpQJy5!;Be_fNuzgb6#+hM<*xL%w2B)IlmJ&2%$YV&ky&gNq{Qy)3e%h3OXY5+kS zr>@=M^NtA5Bj#S^;(H{_+&E__qu_8h3^GMG7{HhcKt24b2lbQKer)4&5LTY2S;CWD z==s@Ni)bUIC|OSApq$v6Y7yYkwr983n!|TZ$l72A7B>ZL+z(BDwaINK_^E>S~&j%nb| z^H_lQilz#f@iw!?(Tj4{f5q`$;o%;oW3;9hWrwD_ZQC{cbs|R z)s^`|a&A(TA#&+{>p|ntoUDg48aGDw(PsZ(s(0UzbIAsMI|mD=LESRO!75e0y%3Xm z?c{>r0uhO2&zWZji*&SOXIJRZ74%E0zot%3FE0cM2kiy_qM(=G5Z~xLWGe^})SF@~ zcu{H=JUqA-MuJ%(K3YE_we8>O3kekP7f09)EzyqMKZ#SU(X-#Hn0I8~3}dgii28+G zZL)Tr>8z!T<%}mud@M62us4NRci0NzMff%Q?IoUacKllJ&N@^CyY<;)UZ&~sFmBo;}Ac;@YFzFRu-aHGBfJ9ilp$rU)7ZK#oKMI4Sl`#0_#Nj-^)w+ zn%y?-QBFX>-zl}o z*f187NzZz|+sV$-RlDg-kl(U;$&V3shT19WP)aE0d7#5lsa#z?Bh?I>&%0EEvzi-USO92o>{advv_QQmyg%0o0?V(xrhj%LzL+QWF~C34=Bp?x<=REjgq`=r7HjT&l$_&T7A za|kPW*zM!?_vcPeW6>g3{Z>kDCg~k)ZDGns6L@h8z;C{BB}w$59IQkJg~iwmG1s8S z{u$|}vd=yxHVUis575(An|fo-xi{Nvrs~yFepk7(+O{W6aZVmAk+6lEAFUWL#*vh? zJ0^`hq(+NHHODQ=M^D#yepb8rS0qDQp{#yg!y+wXCE?%|GgbZDWTT9cxuY6SvzGu= zaGOe+u6e~;4?2gvBXmr6;=+E*o|$XFCu4|yUf9J$gdqux$P=wmLk+E9P!RIRL2rj z#K*_ay+=Y2a`}5?R8-UrMJmhHz^b$~hW5EE3E#rGEL2TpW^{A}!>&nZ#71>+*N6Sz ze^hTtYiY%PZ0nGzq}#qhdp6MXGo$WWOze_}nsJtuNYDLXODpb4n}v5|-BCyBT_Grq z+%E&opHk8oDi7zF!Bwz{)ejER*yxMTyLPL|Se<;scG0fWe()K7aT zVd_xY!q^qZDsyFRYaT+1kH)LSqLz3TrOV~6PYRWbhr?X@Xf5ty>2N1TS3qfp(;HJE zlJ`iij3$vhim&ge3nk`r9XvlFQHf7m6%`^J?D2-z59e!G$_uXHwpIkmAEaAITY9>F z2@a0_^)oft9ig{zGiv$v`p{WW;7MI)fwoOr_V!pTX1LeM&&pbgX=1M>Lu@C9EXUZ% zZeZu_{=_K$4rZ!+q@wo2m_MsA%0m*Sjx@kXe!o-3+K~hGy?O*^=7rqqq(EmAQ1@IjR5x=Bm25pNa9n{n9``PR~akKlXW`! z@g=J!N)CUZcQb+}6X($BluY(&Uwf`#T{ixZRrR?%xI%c-GY=VpsWmF=rKBVnW_cJ1 zq0CZM7dvPRn*7tYz6<(5fR$C=r1w)Bl8^2%VERgv82KmU!)5fw1spmR4`0W-y#r|< zzis?G4c+0~R%F7p{`moaXT7+aQnWy?UbjmSCA9IDijp!dKfmj5<@fK(goK2D1I54f z0m|q@aaS1GaPIbT399ZdU2A7olya=@HxjkUZMXE(l~VU+DW7afpY5hI=N*SZyVPgr z%i~q=nE32A!dj#90t}z+SCA5dGJH6tQy7nP zkV5C@Gbd}k;vO96C7e$JM=?|Q68+bm<8EU&k2iELX0E+KxeQkaVNN@^x?j>9 zu4E>Oob4J%>onQWe@L(&v*ky1a0!dlX))C8q!29(IPWqHsP%WHS?>B|fRsHOu^zQ* zsK=uq%m|^nH2bBfk>Rr_-MJh{y(chp`!f}I&I+jl?yS=75Qmc`w)ls|UpVm`oIkN< zDmk_pmghzA{~jv8Yd?3pK^H^8lMn=}*Fc_tFg^S&Je zzm>%XA!E!eu9GcZo58fJg=DlYVrfn6+|?VI3_4JA9;C zvDUXuy!T}%(wT1SHdGV7*#j0up6KD2b65-EYe(qCD2tIA40{0ADFA{9QA9ZBwM~i| zH@+U4U77kfWj+O?z`1frHhIVaJk!wZ^KZ<0UytII`-!cciZFc@`Nn)!U{*;PW-ojz>N z-$Sx)<{}|o*XfYcLvQVcY3;pp^>3CzVrz5e>Ua70O_Hl+`|RhXVNnJ!x$I`-aO_i~ z%gnqll>yL4(jtaJ$}Qe)qlo|RWKy>Cdsi0ry`3BD??ckTx?|_^DCP3vv2RC#VClD8 zR)IkdR#`3{rrvI=b)AyRlWj#subfZ&OnMUSsl9>wMuug=euTy;XyeM)MWf~F&=RgjIMKyN|F3 z_Uc3S$nHeZ#vLal&(c!2dK(-pzO>(;O>QouiOR5E!*@-9?Ntsn^ZBPg%u~~aMF-En z8+Rtn7*~7UKYOrDbCT(S0hvhN~!tu1}V#?oT`{#|)~^~0k%R^~R=@|-7T z+%ON1uHoLj0CUO0oHB{&3{4ejXiM8Y_hffsiu~_1AO7ez&C~7eV9!@H?t3cE!16O{ z4x+YQ&CaCs>x|=7($dymI6FZ_L(_-6xwEx3v>H_xH!U9VunppjyL9e3q&GdEEG~O& zw&Xcog$IH;4Vds9*&VamZ|t!9hZ=&P)RNb5496zRBnVUKRMx@N6~Qi2qJHeRM>HF3 zDZp?N=Q@7?VI!lrhy{N>77$=^tS=hg;X?$TrkW~n5%V8hxzY}C^=;K;k>r@O?yd{Y zuT8xVYD7GHSu}Zao@}~QHrcuAXeUMRd-r>oUIeKOuVl*Vho?!^`X(<$?DO+?b)<5o zzBs2mxDB)+T=fJruso2CW-kSIc*lUda@04mWOEXTSa}7Kdn>1vagDCrkf1*o^M_o!ERkFw9VH+;8uwi-#=Ni|-*KCP~+)BXQ<(*$WUm>~BpGtosB5Y*i^ zxOeS`0^9(L(c2sGa|b-gGC)VPNj*y(3cjuVh+i8EhfQ+5__f;L_2<*I`mP9>(IG2g zY*Gu%$?t#*rNKdclW$!_oQt1#@MX!c3jJmEM>*LRPdv`t(idJLwY#%JY@s9m^9A~u zahj@vuBVeat?mhm$V9eGg73lCww*pYNP=Jr$!d7G73e|}7%9OCqLUkK_kRLS;OJK^ z)ueAW_C-_lC^AJ-cnaokVc*PCj$7KyuUpx5>g7QLN>+PqY{A{JAY2J; zSnRf*7}%sSE>mwo>dTuNOCwjLDprz-qd)!Re+pSf|GHrF#>bpoTnnEW6GNJ5T;(?_ zmuNKWJ!(0Qm8f-9RPGMHdKWn1vX&Q?kU+huBN0%xeR|w5JxEpD~cGdp6!)f-Eq^@%E;1o^7> zP1_BVbRS~uQIhn0>8X;>&#)tw^89$yk2f28zs`3-6jI=Y)ORp&%ZXIDQKs?OuDy#s zVF%KxWe&aM1n;j0QQe{-+C~VaAUF}rw;x$$eR+X#+Vygf9{@y7Uce^9)^h4p;JL6yZf5+_jk+6h6JV*G{Wo>Uo z(fMz8m^)62AHQndUQv9Ib&)KUW37{>ZG+(&2+GH@%VT`Zd~b@wB)R|S>U zL-gt#d$;Sw)V5T333bp`=W%);i1zP-P5rMHHk=PW3tpbW#xi7LAqePGS|sYq0K=xN~NhVI>nnqwRssVNYtQ4lFaRMlYi zvhP~lrXZ(`B6H-?qG9CWn01O9hh8QRvD(Aw(?h@p^aVdThGCr1YDG^FBAb&)joQ+` z>z|0H($gKFXv6Gr78I)lW!v>}kh3Ez6TmB3MqG9O@g@5{<%QxA5N;A_!-Vq(XP%TUgU(p&O)_026Zng2UB{9GFjgPpC#!?s# z6DN$%Cp?>luq><8fv*KRA{vCnLB2+8UsWIcZuSs~QUAIM#?zgt1yw~pOD&j|fD&`r zGV6K0cJYtkl-Sm;B-IDAMm)Z~n}Cn=%Az_M9#q2q{;)q*zwvYaU{CdYBhuu8H#ruZ z8-)@o?00f|LzZ#eAW=LI1Rn8)eH&As*ig?6cQMYJ4R1pT@neo0-SbHg(gV z)W~V=fMZqSn*qmS6}Q$z9S-b{cKxE{G8P|;EP~R&cHBKKy_N3U%?C==6o-z#8)R&E z%~h2ulIl<;H@sCg0mVNrHOvyUl^ zBqERhe5X%{_TqJE{@5p^#Oigboz5nGDR!aqrSUN;hM&C$wGKgqWjlU7t112LEGm5m z;Do;Dw{*8aiWu>@lR!f}aX2S#;nV#GJVPEibyrFb5RJjuv6;z{E?}*0oc)t@#eaN4 zigW(Qe7xGxb}3Qm_~55N>=9r{ji)_!)x>anE-=Vrcv9(J9${UAH?UwcCKB|sbzKb*k+!lJz1@klL3HU8f0i?Hz3LuW8tDOS{elvRuc zR3*4L_4Y|(%2DDLVqwIWN_&i_=mpUl|6L=hz4sgK#pBd6CTw)1{i}UfPG12|jlPIN7tN_v4 z6Y8$*g*>o;EY!bHKd(=64x@I{s3kQ?>tT|!elbMir3vfG9e#5=uIt=ckTY$+_w=Q_ zr-M{&fEnVJhwTO~{jy;OpWtuu*~5t|hlh<+&}8<;fzjrIzD3eoVF_<++PZ_nBQ|gr zU}tuPc%)&fPwQ(tkAEBRY^s#5F3WfAi$*LkL)_{6X?I7opv@~5{?`b1?-O4zHS|6Wyg3a5_l<3cDr?QkNRs8@zL2tV z4QCzs12VNr%3}VtuH3NsB$CD=R)jL;e`A)LbxsJ!~bv)jE>-q5Ww&eHTwiAsA=Ybb{oy?2o?tAf>{NCqYvIndA!w?pX@?S%bg`g zQu2YPRD?Y(qFCAE>5=eG@zOyBv8wxCuK7+h2`i(#F&>CKqJEl+i{vzXX$3V$MICQNEHMey)#K`BnYYmwV8E#<~%(6 zWQVEsXB%bpZhyH`c`TF$xqfDRHt9w z;m>RAqV;EL^Z~MbjWh!r!aTjFkEh4DuI`|p>H`Gec)-oIh(e;b7kLRs;O*PDe>%2u zdBXo!M{V~~;ShX3x;F|p=u!*JP50K^6l3D=m2<9=Ja%X-dMHUho_A;+wrGw1vrfgs zY72ckSyPNma<)LIX*n%g#r|UUxBm4%@-aFQ=59%vUpbOh7GpLbFSgBIPHuAZotseSjeD0n5%Ob|KRItb}S z-fL?{OQAQUZr1JZ6Qw=kT5u{JDHEg4$YgJmEt_ts4@a?YRVc{t%*P}rw+TXq$xfsc zM094_|IK*BrMX#WoXwIL+nzUILev7yiRa^-+s>bTku8V6hUht$cSO0fbuG?4DQWMP zj-sbN-kvu652DUT0ZTf;hu~b6XkKL8!tcpIkpx{H!mJEGaoEQeqoNjC=b)mYtvB`V zrAghuc1Z z{Q6hb_=ngBI=D*=A33DPs|53L)*UM3S%pbb*{rF#X8x;9lUxHnqjZKgF^s+Msi98Z zx7$41@rBo)%9%?jcCu}k{=F0n9$J?aVFd=*HRf6 z2MLN#QDQb0c+7Rma2=+U+-qk{ayv`q?o(~3Cbr1Pg<;p9q~qrM=E7xJZV2&zijow>v{v)pxdzC?X zLjd&Pmcz>Ec1Y*D}!BZ$VCzHIz5zY41==?7%`zN@|!sNAy*WneM^-<-8OaDP&82!7{ z@o~PNBklMLJKw?yieCcUv&L#@UKef#P63xa(}m^NQkXp4bNDf{RKoawW${U|o$8p~ z=NYHdM3Hyv=?eDsC#Id4GXxhp3v}BHFVa+k<>1W9 zO5aQqr+APkaZi#;fni#*-hM#{J83mGbJ}wXZ+4s#7R_Z}Mf1}Tr7Vk<8 z7minEs*&%xLN^zX;4HzJMLBx)Zi&53=EGk1rp&WAxo+K;G&&w`@*cCI6)1iM47`@f zf`JOFi|U69JEtXg*6-qs$kq9w3dPqfB(UqE7YbSfPeQVNj{jIn&fYoB_Sx@#1zY+p z<2KCcJAaK%%QLXDE49TRdxZxPDklgR|Hy0~0A{y+UhOrCESK6035d;&v6hnwh-R;~ z2okT#xux*9;T`)1A|e?Cqk9nspl);9P%{iP7f3)S23j@i-7Y|EQga*?h~zi1Q0XoHpVA`aX)k^u7RIm z_sX$xOqaIba#}uLN&~-hCosh)_H9cYP8hoqtpgkaF2F4p$X?x2NDiopHdlA={IA*! zaziC+l|q-*YD){$>-I;ktk8V7E>_9oMQ|h8&%GGQNtX55sJiefEHcIO^y&FB)j*3t zRZ+}#X>AiqGc)B8{eu$%9Eb3vS&xrpi2VJGLUQcIzeJ4{;d?y!exazRUNBpZP;Tng|MzcTQpRJVeLFRTafB~uruW2rwbMs#*tWPJPK?+X6 z5q>}gqG*M6>P~)LIcl!LW3+SyecjHS1sQoD2f}R%%(21jTfBBx$mc8vh7Sy<EWK_a6-l&!@AO1V{|!+CC3*jf~!8Y zT1?Ipdn+B_t8M^&dPCfD1@dP zSH3>kpdjjXjlF-{<52@85^PK!RyX=i0TO2|vn<8bbe%_l6C2ijza9@zkOel}crlLNVfusMK8~RyY6elqN5ZEo5=NN5Yoh6kPzZoAbE) zJckJ(>JKwS^1Xw6`b*1#ywWXo7L%wvi# z=7raCslpQ@^aJEg0vNqsCextuwGoq5+M7m~f%*gES-O9FgPZ<-#>vkz5q{$$RN$-R z@2@>`YIG-4sA=~G<(9A?PhBzAIZo4*_C4|mk6OCqHaVHSClA-W0A-Y2U_grw`{2t9 zoK0?90h~urXqMz@d=kQ^Xl?r19A0V%75wvczKLw=-fT%)_6MaNwQtYj>6{llyTh>? zzob@Ptoj|}^B2LK*R97VhaJ}V4IjXvq&ubc?ldFzQ+lEQ!TqRl2|5Z#b#H0o^hXLd8TO`mpXLv4X3p*f<4`v?Ry=O&nOKCyty>F9W2 zcYd+IeI8{q)Rr1YLeUM$(XBhvWL*(NOQWVGLfDV^Uli_NKG|#*b_D>EGFs+XY!vU? zAMcgXKktV?KUN5d6?ylw1C}qA_TKYIfs@YW;im-}{mPM1H)}l)mdDbnPIPv*T_3m1 z9(c6(FPSp5f_(xUhR#pN#6DIhx5>*v&Brtnj3Cpl&1|*P26`skL3{u{!wHplHxn;? z>w(^>Z2CJ6+_yQ@Kh!u*$D?*=YW$F@x|JzF#S2>Hijq{e2*_-bE8;mv`_XA$Pm~^m z%d^8S%zpri?pO5IjcP>D?3zmw@qeU#levW(E~JFfND@L>B`?gxnm;vQJ052y6$`F6 zVYu-RAdU0#%TzD|cBb>Ac2?hzN|I7ifxN35i&MN7r9>-OdG>ut51&_Mz}Kyw3R;&e z-LTBH;<5_xKkxhzaw9X+pjX~08-i%}?A3;c3AwDJiT$ezJ)c&Up27#X-d`1!_XO1{aQRceo^~ z^GY3i$f+*6y1dm$Ejf(gC9N~_M~($;!W=3wX=I2QC`7;O_@Zm-iyd z>ceBqnToB2ohbd2!lwQ4FiJVSm;mzFxkuZnGi`sQPgxkPpDb z;d}QIFQ7IJY9S6*7rl+wZshV*vgh#9fr|dM^}#?-iNCcV0v2ref9!o_TvglGE{cjl z9FHOb0xBZX2oloDL8MXGbQ}akI%LzS0v=L9LOP^2-LQ$RprlB5NlJI;9cy#^|L*&~ z_kO(J?)u;lVXe95nsdZ6o-yZ`>+8mjTsgPk2qFB+F4z(WM<&3_MUdUHg`ZA!#7hFV zZl2xqzU|3QmtPm`+l%Ez0b$~88@C*IjgJJCmsn;h#@mS@2&EeDVQwDsJm-81jtB!T z@fIBWi4b2nmyw$d(rqK%f5e>Uf}Lb%mHR?bf?YnU@)u^R;9ba-=L@tAfk)8T*x0A< zAKA+TZ6gEs3;d4eO+Lij-b*vMEjZ!M9!b9HS}kbvG^9{f(r84nQwLQ^$lj;bW8uH7 zbb`6-G5HJ3$Jugl&>)o0@;x8#be55?difd2yuu`kf0t6Qd+hY|)q2D!cg+`R`N^=p z4~i@{*bV?!gdCAlzl9t<1=m{%{EmfvPT>*Qj|0bRJ~(R4-M2vFm)OVMkmvIxe)Dod zcm1AnnYW}t9h3~y-`^~uyn!2i-{zt72)4JdevD*6)?tQnuNjU`m{~jU|H<)`EjCiW zFuG_f_G%RZHsiGIF|!1On$QN^s0gqvr2?CzXv3F2xv% zfz}>+aVu{4sBTG(ymO>)HJ)^|nPK_{dOTfs`0+FbYc{Od#m&hYHK%FN@r9ILtO&=j zoW#zpbj=3#uKkEq|J#2R4&N(D!YhbsoWK+^lR(!ov@X{&h+Qf4o zysJd`%P0D;p*;8-+ql2k1bG_Pmw#~bDW?y#4^Po1xk?AD4m|BiFc)5{tB_K!BUHu+ z%N4PmI1Ag?O$|C77N3$hp2fi`<4;461VMq3>kp@6^@)!Z4*M|KI4cbK5|W_6M!q9h zCBFT|5UEt1Kj#RwD4|$}1(pr=F<03(M88|OAe40Bp6$m|8?UnR3Um>Zf{I$vF6uqi z4;q?eEpa-nlV3FT_VS6(?p{}tjG*YtNz|x)T9$%Njs@?K%9Jd!022)3aW_2F@OAb+ zD*#@C6Tp+xHiL3R^5xw24jF>OCeAiIE-u%}ZnMB`M4xB+(an)vqeFl65Z2BL{|uI6 z7DKcCg^n-c`x%~alA4)68HBL8p6}#Ie@epY0c3v-asB$qgK3R7we(S>CYlTgLix(Q zi3fz>weI6>sGA1lCoM!=G5h*MCps2jvBGLis$J8<(nm|Gn@Axm98R4jYOWu4d#l49 zEQ9D&4$lxtUYcMCv{MFr^Mfb5Q5}^c3a4}f;hZ$H51(*=o}fTO-O3q^wxodJUnRjy zNuS<0sH?=9o=Srv*ZaX{QgHIY8wtHI5jgz(jDSO`{bvS+D%Y>Jumks%7B2Hc#_ui? z;=6cad4c7ZjG=fqtaW&fbwwM7?7I$~C^MAkJLf}I>OG008@w4xGE_%86O1fAN$E(b zPyG=!+9hJUPST*OGmSE{Q#TxBOG4@g$JSgsx8lapD+*TYL?bux!#vo4@SW;7hmrB?p@m z6EAVN6=4BdM67>`BD!T`@b#zf^4z%SmB7;dyxhd9y9>&umTtNHE@u0!VZU@Ds(@e9 ziLTx2#Mn=X_HI*EfvNay%fA*3$ znXNQpZQ{cb7d6p(WlqJ1j<(ovyI(g}q1?@|2J;}JuV|)RU4o9a@sMIDeE3M^#pA5| zF-nC;SCXm&FCAVQOI#LEMyoJ~o>!2K8JNj76%3@Kx^21LcF!#;i~H6`URF#-#)S(M z&q)bS?ifz|y!sWG74(WxOWVOuNm7MRTi?1a< z)~IA1nD$pJ_iE0Fb5AmS8y!60YjzS^4~*o6g%RQ?qh?(Vim+_6dXs^~#6ODFQn3tT z8+j|HUMCD0Vnle~i9RC6Jl@+M=lVV> z3@0$#etX*8blu76r#<(1Anq3nB}G+Ec^h%rrwUlFzEQlal#P6wSPl{FxbpCbPw zVtKkWjfzB(%rw)p73O2Wz{2^lPFI-ZdrKB}PPe5SW?Z(40y@Fnw+Ct zUAcCHuCrKpawM31W0a3fp{evRBW{qN*qA;|{O}GF`+4y*AEsOyag=M}DXvu&h5R3f z$)@QZ!C^WQYhjU_IjIK+Ug~=4+PgDqsq?uySJg%fERpYN9YAE+Ny?cfZHgo70?QmV zclJ@u_|luxG95nVygJT`t1{~6CFM|#KVZPra)ri~-M@WH33+umoWN|7p>%Ty!sJ@w zj)QOcF8l1`F?L9!^?18hX&`?^Y1gp-`P3`J(W6)=j`6uF^v~xBgwrk zp%74(YiUg|*@wAVx^zc~o`|fz)MD{ZPfYCkw&u&4@5FjN3T9Y4HOn;oK^p`+pDp_c z2v!TlyCerb9VO3Al2wq;Qnf2kl>WL+UrkFLG`+e#t9})d0mj+`_s}>9;5e6M^23-3N7`ei(jS2#h*NR5)^>15by#iw=Kr;F+?JM_Mi)^ zHni5bH#$;qC3(nh*`s|qRKYB|VC6ld(jnW@;0Jf^DURk+i+xU|!w2r%SSPXmUq(H} zBW&-p{W?m9H&*BUH;!7(d(e@H4qXpIEXZXTs7W-*Xd_YT^TEyUmAvQ0iNb!FxvXbK zHm>?B9VS0bCtb3vePu|Q>ZN6$)kwNTcE?QLq+Ma-zH@>YN}&|aIMtJI)$d2wE%Ngc z-(i_~Z;c2BK_6awPFv4bkx}GKD^Aab{d)eKSTBHDg*-6s9($_(Ezy*H(-*Q{hAh+q z6}XwT4mkQbE1lSo!HwAC@VTt_^~t@WrV#g#X_1Y9fKj~Qy_++#+g!qL-=3hxNu3~= zK7Ap)+Y9Tx>F#;(AR|43*2Pu6cHzg6dxzo^Ou593j31nny2|AhRW*B29}~n;#3LsT zS|SoaWHtiQIqg>(Y3UT)SL>UiS+)RC88{=wpiTMb-CzSj>z{3 zOe>PJY3PI(kfKhaT15lYSzboibXTu$yc*nYQtIH&7BpUU zNX4I=xB3o0hY=x$@tFHAro{*se8|P)E#>xSThHQyCWp(s@IR!%oMz3CThW!iqF3sH%n`uCS9DRO?!ns<3a%C z^Rw6Pmfo}{OzP=W4l~kHEze|U>^P7RP=0W9&t};}Q6*T!MNlRlGceeyVvmu!bSe=q z3JQoBUw?JqFU4}i`8jHZ*Vx)C2myamtKfnzUS?~z>ce4F~2-RvN(-EKvR=W_Y`}{8@(*vbb z_M84lqY_DbD3(Ija5+%3FjJof!-X#NrOEX;H2vPX?ups0Rjyqoi&+a#O*PW8Z=X0P z&w{iyaUZc|*I1aD&;Od|yKA)PN8`tJ8uMs^vs7X!Bb#+eu`XTKB;0UX5f$ooBzBZ* z!8NJtRB(lTt}SofFz0(F2}et&T)9QmhDk6H(%`!hMB=euE)E2p6BT_v$61;<$IZ&2 z^Mo#?MK>%@oZQv45odeFaGF2#A5xTv)i$J=~K~K#}a~_C^eagMmx}ae{&CIP^T!Tev~^(AfG(Kf2%)#%8SM8%wpQ z&cXEsEI-Zip{D%nVUhk&`vRTT z*xAOcM8q2JjyTAzQsXC3>4U_du1&j31Rb0P&FI`)uC*kvzR(FHQO$8rJwx;^XRSP$Z zNBw97*Yw8JPW`-tG%2Ql6q}sBL7gMazrRt~Fe>A0ezm>1v=BViLql~bpG_vkt`hLz z%OBF`I%lbr()|ZiR735Z%)~}Wm7AeN@VNer>7w(-Yfg9LU9q_@1DTh+qf#i4w$FPb z#)HgP>A=N2POh3HRsQ@yK$fwiTMvnkk6&QFfPXe+Yr?@fs-9qb=b)K|Dp4rc#--YT}bFnmNTuiV;^C zP0v&_L1i`*{qji6_dTLrAGAq35hjr=JaZnTlz~r3n0_34iE&OI?+U#hL2!RPD6_*; z3=_50f?aD-rnim5~isUd;hIJga<% z6Om6x16%4CaTUI2RuW)+XS-Kg3(k<;x$tqg-7IxKLp!WY9EF~A$0nS3M-3>R{+_|v zB-iKRD*$G)@Dp<9-r_7^-uG=Z-~k9x>ue0)B=oE#jKe`AGQdtMoj=)X%`!_>oz>DJ zU2Y+!Zq093w-K#^Oy(W2;~oqJ+NM$6f{mkH%E?PNi|)*cp>`KAjWQ1%HI-aXwCZhD zth%X1Byj)K8_15zOTnipcbYAg!G_eIp+Dn=&YwpFd_-9Z)t$_A#AU9UBuFkM56*fS zZztTxKAro)kG%16+WOi*0RC8f{rsx$?*0NbWc+*z4|8KQk zgU-KG&m*rn{{fNG*!u=i=$g-~?aMo&LS0jKHF7&WxRWS#yR^o_7%&>nQ|vmFhnv-z z{&V^tFjywDu4~xcJ7!%K`)x-VEWY9rm>a~?;~oBolj+}w(&Z!n#ch|l5L+j-{!eo^ zDPrvQw|}T|TO`5vcXlxyA#v3U96_J7*B@6{vt(#H@_VZi3)4{37?;r2F6IZBnEYF5 zC=D(C6PX_`gn3Dh>~k()H@sE6D{lwRuiVAkgfe=tG4E2Va`$#eV^yE~7!7N`vpblc zJs~V|+o?btWv6s#7)iz1;dTPsqKsrSh3 zo4!%W%ZpWzGj#0#MZuOqmafcvnfzPtgXexKpOy^B%W(t~=&cMxbi?>UnGClD1)=Il zujR8|bkb--39GhxoVCeU%xbVzXI=N)@2~3GqnkTLa6M_IhR9py$aH`+eqJ=(oILs4 zsE?23MPI)G(r(2FuG4W;Pt$YFCNW>IUEe;Vh;`7n(oQQr9M``q^Y#l z#hyckBLB!Ss@lot9ZC{FS&k(zNCI!#$(Qnwx#ojiC0pQvXV0%UE%QRzbwM<*Gx&sf zgvWO;-40l4TS4AJFeDCYA5ZX=AoLH^kz&X5cnrHghW4G~K|WS~fg-->k{u;oRo>B8 zPRp4_fOL{UfHxo0z6}4Gqgv>+m~>PpW~2})VyT`}VSMD|?B>8IZl5X4OM4Ll%Cx#V zd;~TT3o`>M4OU2LjZGug%{RT9CR3ne=X`t-#Hi9TzBTn<2!kbgwWA<#eQ{3BHP^~G z;&8N@)6!U5O-uJ01XO!>B8n!GHrB$k=WVt!N`r>2YC1laE5-1u+cP7dG0lSb*LX#+ z5=n%p!WWKH8(k^;g!#%k8iNThQOe4f&!~L39b{c|#v6-$pf_6W8)Tw@M&Du4EXwZU zyXST}-}gj@#L+p8to9vD`lW6F$Ku*Gkuw>mWd^c+hDIwLWoq;-o57_Yj1tz+QU^@` zD+T!RBUpVbNBt$WSU|C;q$=x&DnS-1)P5=JRqufba2pdB9~D(D*jqR}%z<241VP$yysDsP*CAi103_7Tt~!`#61-zfb?(d#mV zO){%fS|l_PBEb7WPpk^u=zJK(=4a+tOpOr<|iU%u5ILPRL2Vm7$MJ#^&p5<%u{x+ zM}-KJ#w$*gakZ71nTwpfwMfy(@+xoI&2en(?9(nlWYlpVW9_tAvlwNmdg#ZIrwN<_ z@e}?rvT>b8{Yp_s0&~Z%%XvwH9kw%XifJ@2t-3biVu_W7@1iXtMBLT;(as9jC~HZm zd;i<>Hz-s0O#!xgldABbJ`$c2J8IYYyowXev%Y%YL9Bj@=_v8EjOu3n)oiC18ntLf zx!6{E{o@{lAw9TU|G~Xz!4}M8)gvF~_=Yzybc2K{75Rr|)7Q_bSiEbWfu$yB$$`h^Ffz3|`Wp+E zg*~_rM|*s($YXH3g$Df2^_;y8`6w@X z6W6y0Jb9{hxf{bw_A)$^GFIcAUS!7)jOhzvJ`rJIt%KgyB59EiwvmPArilM2z7K{cFnth z!isezl7CDkyqtFOd|&PZ2q3i~tZ|TV-9AXN^r4Q8rJbc#qH$XA)XcgBNVRK5|JY~a zPtaYJmDBXZ7|y&_^5YU3(Gk0FeT0Ns?R|k5N+0l;yPitvYC^i68>5b>g&Jym@k^Bb zHX7dtJtT&PKB!2hOR&sx*=09Eeq-7Xg8k{AAKW=)b^ma)9*G()>hsHYYkr^^K)PoE ziA0@JA`fYa3d28{Lx)EXtw^&>hMdH4-F&n!m)!P?2)gieEA`BsH+t+ z#PV`C&MKzSU?R(v1Fmrah9?J3LE*@WLu>D=pq`_)es|sOZdKHqB++6WfatU95y!3F z#9R2yiBOP1>;yG$E@<)TrrGYZ$_TXiIrp+U8O}O+&ZZUH zbypey&AE_TAMUN;`g`ffc;OGDotP_hhv}Jt_-s~-$3QHdokc7zdX+;X*S4#FYl_IP zhGWs0UTAOeRpu6Mua>^rp0xj-8NZEHcr8AswoW5}SQc7LI`f64A5B%4P$}^!bm+_> z5|fYYC$oec)e+31$P`FQMEJPxrF>-PiCL+^R3BX{RPQw%t5>}IOC3gtfZzpk*a3lK zKkQEOhoJ6MmI*UA(M5vuUo=pYH>P5q8ozq_k|Ku~K(6rq=6hqx)W5Wc;(gn#riQ7# zFEPrUolO2#M#qV?q_~WqJ&%*9BFdA5A782Db&!kQU}0jHeu!ENbLkAg6tU1nQc>lb zOOZe1H`%*8I=5&3=Oa?ucjHg+i80rI@a8T-_CZ>|EWR&Xrwa(qoA={vJuzlA$`DYT z`{in~mb>A^GsKBs>JX1-KRtv#7-Onrl{5^`Ys@H~UJn&R8D$E8x*1)5lrs9xy!)Jl z^{^PyMGsblOcJAQ>{K^t%inz`o!ou)%-3In`E(u+xiVjSVpiM7mc53$$x;`~9sniT zjgL87?=CW*M8+DSX~dby!MUn2T>pbm<)eVA;jAry5O0#ks;~uMW|o@?c}etrQ0Tb` z{QIh8@b*qoGbVX#-7Sj{b@y-b*D5sUo}aiJJo=isf9QEg5s}ZDNRfI(;pj3gyZx*$C)u%1~j78puB#Ksz{!-nrXZS z{u?KbT}?uM@OMv4C`q4vnu+PGn8(8>;PKsf3%blFg9j$** zDSQvD_+qhHWz8s?3-Nl=LuxVDnjjjUT^YdJZp^tpdtfv}ujV-=vW_fh#@<|Ci4v zQ5p7W8ihixJ{T$*%yFXvvd0q#f&U$5XXXCL3#;qIZ-jG}{w^=xN!=P~RI{)` zWZc#r-1-pj?~%X{JHAh>0x*G*$15)h;<@p&@KZqffDumTQQsv+i6g&3E&&N-7T_6_ zD=!TO^IK-7k;9k>>Xi&BVN%T=7qRxRD~u#Se~+JvLBb@0)7=S}?5eI0?v#Ms><3DZ z|F(++Y49jHb9`Vr5Kl75$G=N$ zlxf$^?&13sd}MT9NrDH3m|^5PesUr`Ke!l)&sD-#ihj@Izx@%I97&w~D5#854f}81 zxl<^HI*?}3%>CshU}(D1h?{=j$RVf1QF z!d+I4*eV2Qsq+PbM8Fkq`L7(SJpEujlxVn-P<1!d4#Ic*UkPH4b*DFBwuXU)D?6k6 z-+_(qzz-||Aqu?O_tI=^enr%y<3&!e4hnG&v6wqBC>FzD2odXvZ_f5O@=DKdPxQx| z6Xds8A2E=XiS*TAUL;xqJ_dRha2EeS{L;U@(|CH#m-}8i1_WYrr_|L@eJcIrahv#* z3Bg1jxE#{c7+_T(o$}xQc=>0cyNn9&C)cWct>1H#jc|A#CxJVb3Ps)zml!_DDs}?+ zi%&7-fEy-8Z*a#Yq!-$Kp7P_hdc&XEBWuv4<`J_qO%;o z3pM@wrehONCby#sM%G;a_$|{=yc6H0sN-`)3F0O3Q%?t6p}I=@|F{h>#qlfuZ4Ey9 ze|AptBuYZ!2JxMj{~WJQXeDx<8$$$Tf85 zlToN8Irr24JVC1{8tlGQN#OC=$BS|@J|=Tq`9@KrqG=x5;rb(1Sn!(T#QRYwhXslM z?b4&ey_)239V!d#OiC_Pr7S7Ot^E+>(6ah+Iw2uJFZ7qL(@gS&bpu2A8{Naz@X@un zBbV|$r}@0P>brHxk_qag=27 zac8azdtzwwogSw{c_Z0q{=2d<0z9mm#hEpGniUS#z3xW`A%RcZcIR^FM7GLW7>?rZ zzkFUg6=_<1furIN*ljzR3-v|48Dkx8W>#+YQ*KebRvy_K-U^=Vm73ii4+Z_+gTrO?g48bzlTwPopsLW+38HK7Y}0)0hR{6*dkNw`-l{r|3|g>f zd-MQ~`Q#gMdHE+6yV0#FZk?wKHtds9w6bfQbo%!C*CwB?DuBG(9Y!MD&T7TA>-WOiAp1l0A#pU+?PK&#I%AZ1W znFZB!N85FUd%ibPdt;b=hZ3K8n54$onW!K2wYc$Kb6sy6g$f4>DOZIyI+bb|MRyuF z&3bbS_XKw)LNu$DS4yq>aos=o$NdeYs~rY$M+Zxzvl%(^)qjH_$eL5u7Ee+-Hm9u; z{U-dRmO7=|V}6=gsc*(>8b0ZX`T627h~Y0{NX;gw~yo9%bq8VZ@5=}7hQp>yLOw?09zTd+zhyHhgosHXgXGZ3f~zS{AT zG*+Kam|F}uxz6?QI4^%8s>wHO3Z5LY8!!)$SIv@(;Jkr|rFtx{xki7WYS}daX*VuY zP#B`As+^an^uBAvEWJ85R|4eeXre!5BR99t@Njc@RHDn($bMX9o#Kl^F%8vZQq8=U1WT^J7fxM_}SXEN! zaC>~gqC+4TrK?LfJ3HGyD3TpCz{5e9c2P`3!+ra+)qGv|!iwpY9%&D%6QzL!`JwzC^Zufo7VSJ6pSr+RB_MRT8QH^;DyNe= zG#9xTPkPei)K7tv%LQjV_SnQ)tQCqmzp|cm^Q};{;*8lboTUVbf}&gdesL z7uydRnIr4(c1aJV+Au~2)vYJ=dNxd>Zy$@$wGO+~hFIrCN?MoYFVWGRq6aeydW|2L z?)OnFID>V{k6c~)pd>F9Mnpn&8P+@v3|4J?xG(NaER`aEN|D}U*yd+(m)_6M7^{U# zOJ0E?2H$dTVruSIkjtpXIYoMco{JuFJOqQ5C!7ME z^S#z++xQ&#q7aj;7iC`D&>%Hr5F+=`{-1>8?QqT?@3DV>c{OpgaF84=Xm8PEBiD@S zs4hI*tsxUN+u9Z`;=m6E{4-5*5+#Qi1;w+F465;_wzvvqWxHBiTmOI}yOo@J)o*w; zkD4Ry(yP<*Tm7wOKZNG?#-+$bbuX@HS{682v4(?W9$y~Aii0eY$uh-*HcerZ?gw+a z<`#QUTI$x9j2COod}I)x#0>Y$4w&VAyONQq3GS`t?M3?FN&693K9~%mm|=V_4QXs0 zk*UHFx4k0P5$ie{a|`Fag_06hI#5K@%n|({;fFBe`TJn+e7^Znl=MAewyX864Wgst z9kT7PpgE3`kaq4tJGS*VeBPWOJaelFvF=SD+%o(|(=xKL%<6$L>4EpBB6y1b=^&uB zZGFHtaJ1Wl`{6JcceMYDtw||GR;pZX?iWYZ_E^}WT88uPOlpldneYeJI^(nU1Lh_E zb;lkG0=?LqiYO0n66z~Igx0IK0$h`9OubBQr! zXvDs1Ee1&R!TkLe_rsR~<`&?$t!9$LZ#Q*yb&Z_nZ@eL8J!*#RDjczFqlj=9;^uXSXZsCqx^Vz8c?aa0t6x@QX zwKUE0B>2Hi2iFBN$OIb`Cp^r@y(cxy1kw%WwZOjbZ!+opj*Z+m$ZoNM{B z1#kojP)GCr;&_lKZJ_XGFQ@Hv>vAJY&aFA4me?UKiJwx8F&`!=k0SvXyhYRp>Ex$F zF2s@ZWxrxazYx*Qx9+@{TlnWoIs%U1otG#}`pgQNs{{CkBk}~hW^ZJH)8HJx=NcLs z+ED188f_yD=wjl%Wbn)pmz?BP8W5;a#38*tLvntI%^Uknj1><)pt5-T)Fv8@hHQ#g zgAH*RG=Sc_>RFxeh~OYb;B4AOkGZp-Tc`*YO9+JPg!`&n+q6#ZGz*!YHj6=bp9>P% zeSu($V0nd=xz*Lx+|7PdM(vcb%dRa#YqBbOm?;Z2Yb@?+ME{GVfa=elgf&0Eybe)R zi5}yyt7yC}Oa6@%#ZkHbbQ`KYMa!PJDyRWjo;QFUIIg*EkB&}7S<0teod1XOIE;X) zHE84a@v1FItWZc7~r=K&5bG2LjEd?GAAzlQ$!=XgAEc>MGKf5C49 zK=5CNNXmHaa_P>DBfY)P(2MMU5n*J-}2h!_(udW zlL9BFTRO$W0`9nE6`alDK7aW()5Tq{bfwf{);OC+rb>Y;$0JSjQm*5WA)OFksHflin2F$Je*Nlo#cW?>_tM4hzc#02Svh zG0GDI40b7n;7Oc0w9zTfvTEn~Hh3Z0;@)R|im>|o3;+?{K7$Y|@IF4jVx8GDTxH`# zAU{xolMBRw>F|k+j5N>^_aP;r+v}~XhQfQHh<&%6b#@yM;H!506+>ayZ=A|$(wU~H zqZ7L?O8X0m#!A6-)wCzeh_g3G@~}h$=!PxGC1f?;Bo`nq(R)q8dlq7*XAaW|KKcE1 zP{gmMLqU|r4cxj95+5~GjrIEZ`UXo5y4(9LjTooKgjK|?xCSgOg=tz){t(%lUj`g% zSQOOX-@goD>>EFJ?44@>vGkx*q+rb0MkKW)4;AS<-u_*2hkkscktsF$ zPpF~S)*7S5vLR~nhUz^@kMu#vuHw~=1PH177L7#r)VJ4DMQMt`hUN}C%`xnyXJ!&3 zVZV^2i;HtR+8ePS*q-6%c^FV% zT#Ez&QZa(l@vp0=+mckvINC4Ll#R5%cfQ}MKKr*`=a=HIBh-t4xidP07O}%txa6ZJ z$QPH6JRFv8V?=_XbbuybKPi_7L0fDaP}{VyyoDvFf(xat{?S^Lfq@}?$!)9Ld~y6O zec)r@0StMvk?~KTYzjBpILKDZyNT{rH%e}7Z0sLeDrgajY7C9Cth!&+tzlZ^SfM0; zp8l|Pm$=axCu`Qns!?T3ynMSF$c{-;LvMyjj^EuYW(PBB*4NH7T(L~w}!b$o@$N? zZ{&e7528wVWKdJ|^yrhwWqH>KZX@|_QFmfWu3PAhF4a^UHj1tGL@lSvX-#0_hcb8nY&-NZL)`L%mqCemtXFn)OD>l{C{g`4BUg z>$0x_&LZ&p&$=o+?Y#6|az>q|4U!CaTiWP+T#bwRQqc!EW z#4m#Ivl^#9b-IHHRZ6yXTZb4pufCOm_E!dPrA(MfF-v z;^O`02))*MJIbs*m|b+{Q%JkT7J$uLah-kx5U{5r5S*vj5zw^~n7{_!yw{&Ia;hTj zbP+*lcbxU2(5dI&1koum)LpS|=IJTisjNNVvD}+ca2J^Q@Sy>CJtaR14tX?cKAOjE ze>-ga5X^^$epHW+GaC;W;4t$=DBj5{$no`-n@|b&^Y4#i{j}4u<>FmU9Js;uk0w7q zd!{2))dC~U*dA?3dV0E)D;PZEt)drgiJc#ql%4{yqwo}%AW@BBpI*b1oxRosX7{v< zGwByIcIR}DA_WfCJCtyHLrYIvM2}on|4HeNNf8)Gn0<3ee!4wQxBfIb*J}1B!f6TY zPA4gWI;+)=1DJoA{+?d4c%CIno~+L*tJ6Il-=s}er)WBvmlEAGzBPBSede?|U`RKh zsyxn6H?Kpyc&L3KxXIbLZKaMb4*T=fg{Stzjz;Z{EWVk}b_$4xXFB zJkL;zCGT2JVRqlDITT!U-|2L@d)ab~RXyJzz#Q>2Vdg-VaTN8X1_=a|CoR`ZD#V)d<#i!(g?=snk%`9|8(X*ZYd+AwOa@cD;_JSH%TjSKad#2r) zC=r@oou^f4X?HdtT1atf1c8c0^(6PwWNxIMex{o1a!%%}g1EAZ%I!Tm0GsW4%pu!V zd_jf~c2{`9K08Zhyz8+^V3-?df~#VRm#~#o*h~rM%5;2`q%C3 z&=+#9cl>w%_!c*YAL&G=ww_DejkK9JL3qE{ZXu1C@ z+M*oXoR?Yp#e;%J24ij)b`ncVQm=jbMMBB-$0%v48Pll>i3occJuv!9r3>?Eb z$}Mi-Lvq1IF*I4rPZH6&?UjTZ*K3@o8&fG6&sNclqf*vf_(+6d)2&XD( zXXhwAhmM~Xyi z8KkjJv*~)^F7;|i_=w>sFr5-8ZT9<%#i}l)%^Im>Yf&Q3DJ-WhfV!k{mqOPi&(P6_ z#_ol^dsd0@L4TmhL4Q|W=lrM-T_8^zpa3D zpV>&Tnymr9dja;(3Iw&3Azb_XdR0s;$NHp5*xX3AYPnijg6eikydA?niux z^r;V9lrMB|zmeO&k*Tg3mnKspH`im=IT@}yobU3}lPF~ST$UfKzI~8^08FOM6}tD?(^)TrOVLRLmm%HBC5KPteLGm6Z?`?S$Bn-+k0bw^XEC%@G*{6s-rOPJ_+9 z`}}8D;C{RiaOh|O_IeZ$gp^2p4|(>DdT+d9*hdOG+pWI1QZuo#0^|;N8J`;h-s29} zQ>A*(J4FdZh@v^W{{iREt$sLfBpP*(X<8l>@873wa9&z}q|Hh`J0bKd`lUwIAwd1g zTHZXgZozg#*d{SGFYAJ-;Fu>7?OAt7AO%lGSRE`K9WE6P0Fuuz+<}8i9{ajhFwqJs zyRL@B$-31CD0Lh_BP1QE3JNJ_{Ur{8jwhYV!MROm4)Ze(CFHo!+0yYOzT6)&(TrXl zL!eYIkjXWz3F0A(o=1mUxEeXWp${$^`EWFf%be!OdBpiX9Z29yf9<72G>-lm1P7KG z-1okVgC*(S*-u-HgQ(hYrhnO6XLa(Wk?p9{$pecs@%mZ@3mcob8geS2a$w`$lRsp19jN#We3fh*b**-B2;Q;T9+6ur-W+d<9m|dAo-Wt>SWgqkU zuGtQ#&u#9iudRmmFSGt~1|`*|$NKHDP56qTL@&C>3yi&`4_=gOgX|I&so;DrPcf1) zYFY)-xPQoU?uxs0c6Xo?s4$X~>fj0;336Lc$^}E0GGuqSzmqX|Jt!{opE#<1=!Ht( zVrIdQ^GJNm#qn~VXtc0HUPi>aQ(f2Xzo+?Efob4|!)0|3Pm&3I=02;JuKDc7T=I%Tk!oAXQCyzllS|fd@ zwhak4bVO^`rkZ6^woFMKAxk;h!10yKIF_hbeZIKJDT0{_982lp?wlq&?Gkp5U8(y4 zb>~^0L_s9Ur60lUOLIn_pcq~96=`aS>&h{z8fUey>#<|46CIEOn>P zem0pkRp$0+z;;?z7Kwt$j=?H-Jy`abL3dx#93em_mBO;SoPaZ@**{h*HwOwXmRiA) zUqvpiP%iy8F4sFYg>*`l#$WEjGs0KXKVOr{KX>;W{)7zH7x+p!AB+h5@V(tJ3f$G~ z@E*_7_n%$ksxkgZna!0p?tqW2B{j;1SN%UBY1 z)BWgA#lt+K^~Y;e8^GqE+=kmxg_*dWsi*-VmHD4t9lt&$JuCkvN$YrPe7ASlx<}i- zd2i|Ua5D6vasdcj67T}ntLf=T_E0v8mn~zb>V_)bA~(mW`Nh=+j&)us8F6!NFS>+vtw!#AtW?TqO1?MyW8dLdo|WBzY#{u3(yZQ zo6ha^0$8giBolhKH9}M=3G%4X^LF^p@^iJM+%Vq?s~eD`wDe?l@<&1vPVe+Uq1F0Z zV&vuk(#_o-U$@EnOEvwX$s1FKPM<1A97Es{pkJr$ANExtwhBjp{olVKjr=A*Ywk)1 z0jx~5+Dt8=k@u!BD(HY|HpoUuF=kv%GpQQ6sVJdvJQ{mUV8-Y|Cg~2QCAA}Wdk?N) zrJ-YkmI?39DsPOs`^$?StXlzwy``H2Qq%wkrr5fh8^?SI(tgR(whkUmaQ&!~K!p`dO0=5YOcUCBwIi?UphZMHq#X!SYUc!%RWWS|3P0TY!Z}Qin70CkyC8D(wQeHZHI1rI7VRduR zwnMHV$r1Z`N-T7b%{Gi`WP03$Kksg#3NyZafb@w(})tc?t;Hs;M~20&8rtIo~(5Nz`BT=Xk^c?{xk6P3JJnKHSZ^7(7_w$C&wS4L3ndx!Fjius%zC8l6VI08!!+1>4 z{e{8~4R)(X0aT$*!2SqU1ObIG$F{fK9$xjqx*Tv@nqj%xKDTE$pYz>ycF#f7^jB;KqV_Z6kg0$tc)!177uL^&OKmyX#>?LGjOUy30 z_r?PH#|ODMd>@D0+o)Pr_yD?1jD!@6yk7;Lry_ayYaL+9BRebG*1JGuYO#Fd>;fQ# zm5yK@Hk&>N0EG{)bamjt={kL?)5s`v9Q5GOl30^1hb+;*t}NaCc3_WUUrIK-sTg|v zCgDqI0sv|I7uvT{MGu&GfXsqJke7W#=f6&0cg7Q@!xaci>aIjDlK9BhAF!NX;&$Bp zZK7Lou3%-glkV!4x!!8sLu=~>p+6DZ|DVvJ4g0uQ=H(3Wx!SbD3 zYxH$HAL)P*HaJ+FYzo;}DIM9L;_Fy+hryI94g!ueYZ=6ri^{Kn-d`lq&Q$cxEEP|*t>!zWv>oGF8MM-P#QRbA-Mp=&>r(# z5HN|k@I`hzd)vcXRTLoc6$XxL4VJgCpsVn%{1ifsG=?vxvKfO<`ULiIwh|_ngl($Ks*tG4kK2 z0l5rkRR!u4mbLH$M8XV>*UkOVa-jnWL5RWW`nb?;usN=Hn*&4>w-B(OdLeSW=a2zUq-0BiHF&X$r1?j6)b5A1E%Q! z&@XsW!F5(iFC(j1!_alVjP=mvQ45|1)COu@4*~H)Juaf6a5_;{Q6tttcM=lo{ZxDZ zY@tj|O=|#BUA?Uk8{Jt^YMz;ZESN(m-H_cu*6tpNPZ&Ogh1o4D@EJ(butp0+1URr= z%27`QG66f;f16^^awZM|OZ4t48i2Pd+6Mk%w@E^)#s>=ZOGoJ1^%-Wk1RHKhN=Zr0 z3Xbf^M~%;Zj~Gj;ROtJ9+3n>(r)u_Z%DR~5-4`8rX}j3`lew{GBQ&mOe}xqUEs z@uGeu&PfeV(R13>%zfV&N1RB(62i#i$#&rNj=;Jp(Fv^T1i{pe@U* zpvsPRlRpeok&U8Ng4KUsfpf>^#}jdAimjn}7+o9nY;yUbM(|W;O|o@qm>@hIkHzKU zt_C%aHwCO!jHcG@PVFC%0TTR_`|+X~YFlXd41c_{dFQmsUy{Dvf`iQjI5`@GK<(Zi|7`q0WX{&mh~vZ|zSX ztCK2H%ElmUaEuMJJoMK5xM<2r!Y$)l`Fn!?dEdKTr&_Z&RY1MTSucO8x3FX#Q&R}x z__3m6!*6$18+1R@f{Mins8efn5a!qH|Cck&GtxZ*Mp}N<7@Vluzos?v1#;@L0begd zAu0H~m0lb>a!ic1(IYK9=U{29fZ?{zJF3U|gLWqIk2WVJb8B+$;{QN78vHjX3@`Hr zXY}@3e4hXKii@t!fBnyxum9cU{GU<=LHB#0%_KqL^sd&5v%wVwwaiaNR2xC{mF9x6 za1oYLS!@Q3NYC5b`yL|MYKMnA5Ixtip}7nx!VGVbwEuk^Qgy44V%Mj2y~IKXwU{=<{zN#uJ(mPTq2(GPm)!u&|)^(>TSDPrcdASc9O;{Xa;EQY$Zgl56$P%+n9L zQjb7bDcb$g3}Syenr!AjDJ zHSxhxB9PUHzMW0oc?6W0*-4K1_q68+Ep4;m1g@WB_Hmc_gnJ7;o?Fbc%uE5Q>b$Va zBQxKN1V)?xq_3Q76?e?Zof{(f4-#Eek{K|PZpm^BSXg)NCtMz}4NpoW*MWGlQza%Zj+LhoUqgluFSJl^fh%16U@(}F zX&zlEk(BaxOi2q_huM$VPY+^p0TPFXphLM1i?TkubgYmM1rlz4d0E$jc z`Od>He+WfI`c1mO=G^p9Tf~+>7lTxE&t`%nl^zx?)apTLseiIN_C&%dPaTTz8ekJ6 zJNXw0NQ$SWr9meaW&;Nk>&5R~H5x@v&C#k9@uO$lwq|R~t9!C1n>w_`>Z}51IGRi- zCgL9T*7}N0?i61%fT3O+LyNlh?I`V@+PixzeIf?D2v3e2v!k;g03$Wt8P(nedeFSS zCkxls%R3Ngw9+cf#B4_EmadR*K_c&zwch^N!QSZGJtkq#V zDW!;^_&z_GLz0R|b;;+9+-JsXRTgxBw^wtjJEsldvO?nu<1UDV_-l^09rK#i#C<*{ z=|`vGzO&L-MfFT@{Pv!+AdHu->$vw~%$Zr}k1{q=Y7S;KN%qL}yU!U9OpO=MO%-#@ z{YP^W`3Rt_$&$U0dTcCfJfW1|0@~FwJg020*I-l!kieTFg5?lVd-B+U@S;ah4nf5F_pjifOnr~aDMJXS4uc|htjhehe1w- z7TQDaw51TM7@840Ra zMyQ37vrZeo!KeO+--;HEG5P-@``9E^KuP_ z#8UVS#O~T_>tyNGjt{(#%p?wR->zdasf;vxiM#eIg6)GB2^dBtdVh$O#*pUe3NfhwsQ`+$Y|2qx3w@=Kma)>yfC_ z_VzyA`7}--)O3-KzcWz4<4tM{V+cRA^)3q+t$5|0K~?<39Ab{>3R$!2wye^tCay;} zE%a+xwqBLF-s8CsBs9Gw4bU9dQm1Mz;?2!#Wwm!H1Pol#_u3R6@7c07HbKb;W=5Ua zT!+rwR#_{S=Al`LA}zi7H&S9FBudHNl`SR!HE8-MceW}>dxN3po7G&cq}?cBFcO*V z-ix01Dy~`E4~V4nY=;khxUTG*1vVO|TZ+7`u?C|8xw8I!j}~NwO8RV^m_t1hZ(#Q( zVPdEwPqtk5B@A=DHDNpMJ)&yc&KsW3^Lz{5!+h`sI-Tk!&F=?j-v-E`(*z0MQ8Lfn zG|g>+9IeQYJ6g?CU0!jv&re`dkLSvsDH?d%)n#nJGtw66mVN_eoB_4^oYe^(*qgGw$D~gS!CPlkAuNQXmI@Wu!O&>dQ4Ey9Puedc)Ods zTjK{qlZ+=wigJ~NI3;Q&VhudFs~vrsjH$oA@dEQkO6^T_Q%rGBP*SH2-oA<25xg+j z-_Zo%lVsrZfHUdaI9W2@4`4f!4%{|asUSdPZh=ueT57^L(~BOZugSi?+4REBm($uE zK8>&4+v8T$Ob}lhHcvWE#xP78usM&g0+5A#Ir-RrmdSfed{-z~#*OA?=pCZSEVS4c zOfA>=B7s>EHD;9I?r2M&Q}xJlrdut$Zq?zBL>ru~|G6B`N32gCsus)DPC>&iu`Q8C zDtz6$>FOjt*DH&9upQ(oDHJiqbGCjId4f@y9;Z2U>Upy2o=Lk?Q02sa>U(8u#7D|w z31ogY4F(ayZ#%O`;fctD{CD983XZ5Q3i3(YZfd0tYcQ&Pti?Cew44q?b@S&7yhU?B zCMG7*m1Mv(-BKyQ9**im{`bf$MzX45J5i8MNdo+nNd_L3^!-A6t+!jSK4v4Mo~8XT{O%jp$fY{7-x?#w#1AEop$uK!iTPQz;r%+3FPUsmFOghayc=>4F?9}G%vH{`6iEmD zhG~ir3`RXJDW86-&U%^c2No;@wvESS#}9wTuO{vIAw+UcSCxOSt2NxpbO%?&+)!v1 zNiS?HkQ(GF8$lRv>UuYOv(U1P--7n68SJ8`{!}M6&Jcex=G&cVJR6UwRWbNHc1z?p z>r)Kl8$O&)06oX4!h(5pljiT8g|%y;?qO%-wX7n>+?fP|w>c+dcHF+K*08Y~Lcev+ z3$Ocj#FS2N{(CmSv6~?|$HF!TJVCn=3gEc^-6e$!^paJW z_`NK>C|oi(6*zb1@(fgsVtq-M892tGL=M{CcX3b>ABFFeyxy5uu=B=7TJD!mEwJ%& zh_>)pg5_8$Cvc~L?%lq!yWk|B#5R?;rqe8&ei_648i3#)Vw1_7RjwN@k(yQ9YDzY| z7f_*VV;>Os`3rj<9bstsxS^Oa*k<}cyZN9tUL7>?E_H28JUaDb#G7 zgw=@TRv`ri1)Qex&>>pi@cPe*#GH3mJm9ak;aVf3FANZbt%Ovjez*D1&xSvPUd3aV~%U()r!10GCZHM*TL-CT!_l=R`Wwd9s8$ zzg0z#_z=T*9N&vJ%_w8o&`pK3hhnQjuumeUE|wP}RFUNWs5zkNz%sk6**vis~=lhd|o7_7NhCOrJ~K3dLD( zZl+ZE4tI@u-55-}ll$>(QP~r%zrR6J_ + +input group "=== Market ===" +input string InpSymbol = "BTCUSD"; +input ENUM_TIMEFRAMES InpTimeframe = PERIOD_M15; +input double InpLots = 0.01; +input int InpSlippagePoints = 30; +input int InpMagic = 930101; +input int InpMaxPositions = 6; +input bool InpDebugLogs = true; + +input group "=== EMA Trend State ===" +input int InpEmaPeriod = 200; +input int InpTrendLookbackBars = 12; +input double InpTrendMinPoints = 120; // total EMA delta over lookback +input double InpFlatMaxPoints = 40; // dead-flat band over lookback + +input group "=== RSI Entries ===" +input int InpRsiPeriod = 14; +input double InpRsiDipLevel = 35.0; // buy dip in uptrend +input double InpRsiSurgeLevel = 65.0; // sell surge in downtrend +input bool InpUseCrossSignal = true; // true=cross, false=state-based + +input group "=== Risk ===" +input bool InpUseHardSLTP = false; +input double InpSLPoints = 2500; +input double InpTPPoints = 4500; + +enum TrendState +{ + TREND_FLAT = 0, + TREND_UP = 1, + TREND_DOWN = -1 +}; + +CTrade trade; +datetime g_lastBarTime = 0; + +void DebugLog(const string msg) +{ + if(InpDebugLogs) + Print("[EMARSIWarm] ", msg); +} + +bool IsNewBar(const string symbol, ENUM_TIMEFRAMES tf) +{ + datetime t = iTime(symbol, tf, 0); + if(t <= 0 || t == g_lastBarTime) + return false; + g_lastBarTime = t; + return true; +} + +double GetIndicatorValue(const int handle, const int bufferIdx, const int shift) +{ + if(handle == INVALID_HANDLE) + return 0.0; + double v[1]; + if(CopyBuffer(handle, bufferIdx, shift, 1, v) <= 0) + return 0.0; + return v[0]; +} + +double GetEma(const string symbol, ENUM_TIMEFRAMES tf, const int period, const int shift) +{ + int h = iMA(symbol, tf, period, 0, MODE_EMA, PRICE_CLOSE); + double val = GetIndicatorValue(h, 0, shift); + if(h != INVALID_HANDLE) + IndicatorRelease(h); + return val; +} + +double GetRsi(const string symbol, ENUM_TIMEFRAMES tf, const int period, const int shift) +{ + int h = iRSI(symbol, tf, period, PRICE_CLOSE); + double val = GetIndicatorValue(h, 0, shift); + if(h != INVALID_HANDLE) + IndicatorRelease(h); + return val; +} + +TrendState GetTrendState() +{ + double emaNow = GetEma(InpSymbol, InpTimeframe, InpEmaPeriod, 1); + double emaPast = GetEma(InpSymbol, InpTimeframe, InpEmaPeriod, 1 + InpTrendLookbackBars); + if(emaNow == 0.0 || emaPast == 0.0) + return TREND_FLAT; + + double deltaPts = (emaNow - emaPast) / _Point; + if(MathAbs(deltaPts) <= InpFlatMaxPoints) + return TREND_FLAT; + if(deltaPts >= InpTrendMinPoints) + return TREND_UP; + if(deltaPts <= -InpTrendMinPoints) + return TREND_DOWN; + return TREND_FLAT; +} + +int CountPositionsByMagic(const string symbol, const int magic) +{ + int count = 0; + for(int i = PositionsTotal() - 1; i >= 0; --i) + { + ulong t = PositionGetTicket(i); + if(t == 0) + continue; + if(PositionGetString(POSITION_SYMBOL) == symbol && + (int)PositionGetInteger(POSITION_MAGIC) == magic) + count++; + } + return count; +} + +string TrendStateToString(const TrendState s) +{ + if(s == TREND_UP) return "UP"; + if(s == TREND_DOWN) return "DOWN"; + return "FLAT"; +} + +void CloseAllByMagic(const string symbol, const int magic) +{ + for(int i = PositionsTotal() - 1; i >= 0; --i) + { + ulong t = PositionGetTicket(i); + if(t == 0) + continue; + if(PositionGetString(POSITION_SYMBOL) == symbol && + (int)PositionGetInteger(POSITION_MAGIC) == magic) + trade.PositionClose(t); + } +} + +void ComputeSLTP(const bool isBuy, const double entry, double &sl, double &tp) +{ + if(!InpUseHardSLTP) + { + sl = 0.0; + tp = 0.0; + return; + } + + if(isBuy) + { + sl = entry - InpSLPoints * _Point; + tp = entry + InpTPPoints * _Point; + } + else + { + sl = entry + InpSLPoints * _Point; + tp = entry - InpTPPoints * _Point; + } +} + +bool BuySignal() +{ + double r1 = GetRsi(InpSymbol, InpTimeframe, InpRsiPeriod, 1); + double r2 = GetRsi(InpSymbol, InpTimeframe, InpRsiPeriod, 2); + if(r1 == 0.0 || r2 == 0.0) + return false; + + if(InpUseCrossSignal) + return (r2 > InpRsiDipLevel && r1 <= InpRsiDipLevel); // fresh dip + return (r1 <= InpRsiDipLevel); +} + +bool SellSignal() +{ + double r1 = GetRsi(InpSymbol, InpTimeframe, InpRsiPeriod, 1); + double r2 = GetRsi(InpSymbol, InpTimeframe, InpRsiPeriod, 2); + if(r1 == 0.0 || r2 == 0.0) + return false; + + if(InpUseCrossSignal) + return (r2 < InpRsiSurgeLevel && r1 >= InpRsiSurgeLevel); // fresh surge + return (r1 >= InpRsiSurgeLevel); +} + +void OnTick() +{ + if(_Symbol != InpSymbol) + { + static datetime lastMismatchLog = 0; + datetime nowBar = iTime(_Symbol, PERIOD_M1, 0); + if(nowBar != lastMismatchLog) + { + lastMismatchLog = nowBar; + DebugLog(StringFormat("Skipped: chart symbol=%s but InpSymbol=%s. Attach EA to %s chart or set InpSymbol=%s.", + _Symbol, InpSymbol, InpSymbol, _Symbol)); + } + return; + } + if(!IsNewBar(InpSymbol, InpTimeframe)) + return; + + TrendState state = GetTrendState(); + double rsi1 = GetRsi(InpSymbol, InpTimeframe, InpRsiPeriod, 1); + double rsi2 = GetRsi(InpSymbol, InpTimeframe, InpRsiPeriod, 2); + int posCount = CountPositionsByMagic(InpSymbol, InpMagic); + DebugLog(StringFormat("Bar=%s state=%s rsi1=%.2f rsi2=%.2f positions=%d", + TimeToString(iTime(InpSymbol, InpTimeframe, 1), TIME_DATE|TIME_MINUTES), + TrendStateToString(state), rsi1, rsi2, posCount)); + + // Core idea: when EMA is "dead flat", flatten everything. + if(state == TREND_FLAT) + { + DebugLog("Action: EMA flat -> closing all positions for this magic."); + CloseAllByMagic(InpSymbol, InpMagic); + return; + } + + if(posCount >= InpMaxPositions) + { + DebugLog(StringFormat("Skipped: max positions reached (%d).", InpMaxPositions)); + return; + } + + MqlTick tick; + if(!SymbolInfoTick(InpSymbol, tick)) + { + DebugLog("Skipped: SymbolInfoTick failed."); + return; + } + + double sl = 0.0, tp = 0.0; + trade.SetExpertMagicNumber(InpMagic); + trade.SetDeviationInPoints(InpSlippagePoints); + + if(state == TREND_UP && BuySignal()) + { + ComputeSLTP(true, tick.ask, sl, tp); + if(trade.Buy(InpLots, InpSymbol, tick.ask, sl, tp, "EMAUp_RSIDip_Buy")) + DebugLog(StringFormat("BUY opened lots=%.2f price=%.2f sl=%.2f tp=%.2f", InpLots, tick.ask, sl, tp)); + else + DebugLog(StringFormat("BUY failed retcode=%d", trade.ResultRetcode())); + } + else if(state == TREND_DOWN && SellSignal()) + { + ComputeSLTP(false, tick.bid, sl, tp); + if(trade.Sell(InpLots, InpSymbol, tick.bid, sl, tp, "EMADown_RSISurge_Sell")) + DebugLog(StringFormat("SELL opened lots=%.2f price=%.2f sl=%.2f tp=%.2f", InpLots, tick.bid, sl, tp)); + else + DebugLog(StringFormat("SELL failed retcode=%d", trade.ResultRetcode())); + } + else + { + if(state == TREND_UP) + DebugLog("No entry: UP trend but RSI dip condition not met."); + else if(state == TREND_DOWN) + DebugLog("No entry: DOWN trend but RSI surge condition not met."); + } +} + diff --git a/lab/EAs/SimpleEMA/exploration-ideas.tex b/lab/EAs/SimpleEMA/exploration-ideas.tex new file mode 100644 index 0000000..ea7c07d --- /dev/null +++ b/lab/EAs/SimpleEMA/exploration-ideas.tex @@ -0,0 +1,21 @@ +\section{Simple EMA Price-Action: V1 Exploration Roadmap} +\label{sec:simple-ema-v1-roadmap} + +\textbf{Objective (V1).} +Establish a robust baseline for the BTCUSD EMA price-action cross strategy before adding complexity. V1 prioritizes stability, explainability, and out-of-sample consistency. + +\begin{enumerate} + \item \textbf{Baseline calibration}: optimize core parameters ($EMA$ period, minimum candle body, ATR stop/take-profit multipliers) with bounded search ranges and fixed transaction-cost assumptions. + \item \textbf{Regime segmentation}: split results by volatility/trend regime (e.g., ATR percentile and ADX bins) to identify where the strategy has structural edge. + \item \textbf{Session effects}: evaluate performance across Asia, London, and New York sessions; test session-specific body-size and risk multipliers. + \item \textbf{Exit policy comparison}: compare fixed ATR exits vs. trailing stop and partial take-profit exits; report trade duration, payoff skew, and drawdown impact. + \item \textbf{Execution stress test}: re-run with adverse spread/slippage scenarios to measure fragility and realistic live-trading degradation. + \item \textbf{Position-sizing study}: benchmark fixed lot, volatility targeting, and capped fractional sizing with drawdown constraints. + \item \textbf{Signal quality filters}: test wick/body ratio and momentum confirmation to reduce false crosses; quantify precision-recall tradeoff. + \item \textbf{Walk-forward validation}: use rolling train-test windows and report parameter drift, out-of-sample Sharpe, and failure periods. + \item \textbf{Statistical confidence}: include bootstrap confidence intervals for Sharpe, profit factor, win rate, and max drawdown. + \item \textbf{Portfolio contribution}: evaluate correlation-adjusted P\&L contribution when combined with other robots in the united\_dynamic stack. +\end{enumerate} + +\textbf{V1 deliverables.} +For each experiment, report: net P\&L, Sharpe, Sortino, max drawdown, profit factor, win rate, average trade duration, and out-of-sample performance delta. diff --git a/lab/EAs/SimpleEMA/main.mq5 b/lab/EAs/SimpleEMA/main.mq5 new file mode 100644 index 0000000..7e262ca --- /dev/null +++ b/lab/EAs/SimpleEMA/main.mq5 @@ -0,0 +1,179 @@ +#property strict +#property version "1.00" + +#include + +input group "=== Market ===" +input string InpSymbol = "BTCUSD"; +input ENUM_TIMEFRAMES InpTimeframe = PERIOD_M15; +input double InpLots = 0.01; +input int InpSlippagePoints = 30; +input int InpMagic = 910001; + +input group "=== Signal ===" +input int InpEmaPeriod = 50; +input int InpBodyMinPoints = 100; // Minimal candle body size + +input group "=== Risk ===" +input bool InpUseAtrStops = true; +input int InpAtrPeriod = 14; +input double InpSlAtrMult = 1.8; +input double InpTpAtrMult = 3.0; +input double InpFallbackSLPoints = 2500; +input double InpFallbackTPPoints = 4500; + +CTrade trade; +datetime g_lastBarTime = 0; + +bool IsNewBar(const string symbol, const ENUM_TIMEFRAMES tf) +{ + datetime t = iTime(symbol, tf, 0); + if(t <= 0) + return false; + + if(t == g_lastBarTime) + return false; + + g_lastBarTime = t; + return true; +} + +bool SelectOwnPosition(const string symbol, const int magic) +{ + if(!PositionSelect(symbol)) + return false; + return (int)PositionGetInteger(POSITION_MAGIC) == magic; +} + +double GetAtrPoints(const string symbol, const ENUM_TIMEFRAMES tf, const int period) +{ + int hAtr = iATR(symbol, tf, period); + if(hAtr == INVALID_HANDLE) + return 0.0; + + double atrBuff[1]; + if(CopyBuffer(hAtr, 0, 1, 1, atrBuff) <= 0) + { + IndicatorRelease(hAtr); + return 0.0; + } + + IndicatorRelease(hAtr); + return atrBuff[0] / _Point; +} + +double GetEmaValue(const string symbol, const ENUM_TIMEFRAMES tf, const int period, const int shift) +{ + int hEma = iMA(symbol, tf, period, 0, MODE_EMA, PRICE_CLOSE); + if(hEma == INVALID_HANDLE) + return 0.0; + + double emaBuff[1]; + if(CopyBuffer(hEma, 0, shift, 1, emaBuff) <= 0) + { + IndicatorRelease(hEma); + return 0.0; + } + + IndicatorRelease(hEma); + return emaBuff[0]; +} + +void ComputeStops(const bool isBuy, const double entry, double &sl, double &tp) +{ + double slPts = InpFallbackSLPoints; + double tpPts = InpFallbackTPPoints; + + if(InpUseAtrStops) + { + double atrPts = GetAtrPoints(InpSymbol, InpTimeframe, InpAtrPeriod); + if(atrPts > 0.0) + { + slPts = MathMax(atrPts * InpSlAtrMult, 100.0); + tpPts = MathMax(atrPts * InpTpAtrMult, 100.0); + } + } + + if(isBuy) + { + sl = entry - slPts * _Point; + tp = entry + tpPts * _Point; + } + else + { + sl = entry + slPts * _Point; + tp = entry - tpPts * _Point; + } +} + +int OnInit() +{ + if(!SymbolSelect(InpSymbol, true)) + { + Print("Failed to select symbol: ", InpSymbol); + return(INIT_FAILED); + } + + trade.SetDeviationInPoints(InpSlippagePoints); + trade.SetExpertMagicNumber(InpMagic); + return(INIT_SUCCEEDED); +} + +void OnTick() +{ + if(_Symbol != InpSymbol) + return; + + if(!IsNewBar(InpSymbol, InpTimeframe)) + return; + + // Use closed candles (shift 1 and 2) to avoid intrabar repainting behavior. + double o1 = iOpen(InpSymbol, InpTimeframe, 1); + double c1 = iClose(InpSymbol, InpTimeframe, 1); + double o2 = iOpen(InpSymbol, InpTimeframe, 2); + double c2 = iClose(InpSymbol, InpTimeframe, 2); + double e1 = GetEmaValue(InpSymbol, InpTimeframe, InpEmaPeriod, 1); + double e2 = GetEmaValue(InpSymbol, InpTimeframe, InpEmaPeriod, 2); + + if(e1 == 0.0 || e2 == 0.0) + return; + + bool bullishBody = (c1 > o1) && ((c1 - o1) / _Point >= InpBodyMinPoints); + bool bearishBody = (o1 > c1) && ((o1 - c1) / _Point >= InpBodyMinPoints); + bool crossedUp = (c2 <= e2 && c1 > e1); + bool crossedDown = (c2 >= e2 && c1 < e1); + + bool longSignal = crossedUp && bullishBody; + bool shortSignal = crossedDown && bearishBody; + + bool hasPos = SelectOwnPosition(InpSymbol, InpMagic); + if(hasPos) + { + ENUM_POSITION_TYPE posType = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); + if((posType == POSITION_TYPE_BUY && shortSignal) || + (posType == POSITION_TYPE_SELL && longSignal)) + { + trade.PositionClose(InpSymbol); + hasPos = false; + } + } + + if(hasPos) + return; + + MqlTick tick; + if(!SymbolInfoTick(InpSymbol, tick)) + return; + + double sl = 0.0, tp = 0.0; + if(longSignal) + { + ComputeStops(true, tick.ask, sl, tp); + trade.Buy(InpLots, InpSymbol, tick.ask, sl, tp, "Simple EMA PA Cross"); + } + else if(shortSignal) + { + ComputeStops(false, tick.bid, sl, tp); + trade.Sell(InpLots, InpSymbol, tick.bid, sl, tp, "Simple EMA PA Cross"); + } +} diff --git a/lab/EAs/SimpleEMA/main_v1.mq5 b/lab/EAs/SimpleEMA/main_v1.mq5 new file mode 100644 index 0000000..c1c601e --- /dev/null +++ b/lab/EAs/SimpleEMA/main_v1.mq5 @@ -0,0 +1,297 @@ +#property strict +#property version "1.10" + +#include + +input group "=== Market ===" +input string InpSymbol = "BTCUSD"; +input ENUM_TIMEFRAMES InpTimeframe = PERIOD_M15; +input double InpLots = 0.01; +input int InpSlippagePoints = 30; +input int InpMagic = 910011; + +input group "=== Signal ===" +input int InpEmaPeriod = 50; +input int InpBodyMinPoints = 100; +input bool InpUseAdxFilter = true; +input int InpAdxPeriod = 14; +input double InpAdxMin = 18.0; + +input group "=== Session Filter (Server Hour) ===" +input bool InpUseSessionFilter = false; +input int InpSessionStartHour = 6; +input int InpSessionEndHour = 22; + +input group "=== Risk ===" +input bool InpUseAtrStops = true; +input int InpAtrPeriod = 14; +input double InpSlAtrMult = 1.8; +input double InpTpAtrMult = 3.0; +input bool InpUseHardSL = true; +input bool InpUseHardTP = false; +input bool InpUseTrailingStop = true; +input double InpTrailAtrMult = 1.2; +input bool InpUseBreakEven = true; +input double InpBreakEvenAtrTrigger = 1.0; +input double InpBreakEvenLockPoints = 100; +input double InpFallbackSLPoints = 2500; +input double InpFallbackTPPoints = 4500; + +CTrade trade; +datetime g_lastBarTime = 0; + +bool IsNewBar(const string symbol, const ENUM_TIMEFRAMES tf) +{ + datetime t = iTime(symbol, tf, 0); + if(t <= 0 || t == g_lastBarTime) + return false; + g_lastBarTime = t; + return true; +} + +bool IsInAllowedSession() +{ + if(!InpUseSessionFilter) + return true; + + MqlDateTime dt; + if(!TimeToStruct(TimeCurrent(), dt)) + return true; + int h = dt.hour; + if(InpSessionStartHour <= InpSessionEndHour) + return (h >= InpSessionStartHour && h < InpSessionEndHour); + + // Overnight window, e.g. 22 -> 6 + return (h >= InpSessionStartHour || h < InpSessionEndHour); +} + +bool SelectOwnPosition(const string symbol, const int magic) +{ + if(!PositionSelect(symbol)) + return false; + return (int)PositionGetInteger(POSITION_MAGIC) == magic; +} + +double GetIndicatorValue(const int handle, const int bufferIndex, const int shift) +{ + if(handle == INVALID_HANDLE) + return 0.0; + + double buff[1]; + if(CopyBuffer(handle, bufferIndex, shift, 1, buff) <= 0) + return 0.0; + return buff[0]; +} + +double GetAtrPoints(const string symbol, const ENUM_TIMEFRAMES tf, const int period) +{ + int hAtr = iATR(symbol, tf, period); + double atr = GetIndicatorValue(hAtr, 0, 1); + if(hAtr != INVALID_HANDLE) + IndicatorRelease(hAtr); + if(atr <= 0.0) + return 0.0; + return atr / _Point; +} + +double GetEmaValue(const string symbol, const ENUM_TIMEFRAMES tf, const int period, const int shift) +{ + int hEma = iMA(symbol, tf, period, 0, MODE_EMA, PRICE_CLOSE); + double ema = GetIndicatorValue(hEma, 0, shift); + if(hEma != INVALID_HANDLE) + IndicatorRelease(hEma); + return ema; +} + +double GetAdxValue(const string symbol, const ENUM_TIMEFRAMES tf, const int period, const int shift) +{ + int hAdx = iADX(symbol, tf, period); + double adx = GetIndicatorValue(hAdx, 0, shift); + if(hAdx != INVALID_HANDLE) + IndicatorRelease(hAdx); + return adx; +} + +void ComputeStops(const bool isBuy, const double entry, double &sl, double &tp) +{ + double slPts = InpFallbackSLPoints; + double tpPts = InpFallbackTPPoints; + + if(InpUseAtrStops) + { + double atrPts = GetAtrPoints(InpSymbol, InpTimeframe, InpAtrPeriod); + if(atrPts > 0.0) + { + slPts = MathMax(atrPts * InpSlAtrMult, 100.0); + tpPts = MathMax(atrPts * InpTpAtrMult, 100.0); + } + } + + if(isBuy) + { + sl = InpUseHardSL ? (entry - slPts * _Point) : 0.0; + tp = InpUseHardTP ? (entry + tpPts * _Point) : 0.0; + } + else + { + sl = InpUseHardSL ? (entry + slPts * _Point) : 0.0; + tp = InpUseHardTP ? (entry - tpPts * _Point) : 0.0; + } +} + +void ManageOpenPosition() +{ + if(!SelectOwnPosition(InpSymbol, InpMagic)) + return; + + MqlTick tick; + if(!SymbolInfoTick(InpSymbol, tick)) + return; + + ENUM_POSITION_TYPE posType = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); + double openPrice = PositionGetDouble(POSITION_PRICE_OPEN); + double curSL = PositionGetDouble(POSITION_SL); + double curTP = PositionGetDouble(POSITION_TP); + + double atrPts = GetAtrPoints(InpSymbol, InpTimeframe, InpAtrPeriod); + if(atrPts <= 0.0) + atrPts = InpFallbackSLPoints; + + double triggerPts = atrPts * InpBreakEvenAtrTrigger; + double trailPts = MathMax(atrPts * InpTrailAtrMult, 50.0); + + double newSL = curSL; + bool needModify = false; + + if(posType == POSITION_TYPE_BUY) + { + double profitPts = (tick.bid - openPrice) / _Point; + + if(InpUseBreakEven && profitPts >= triggerPts) + { + double beSL = openPrice + InpBreakEvenLockPoints * _Point; + if(newSL == 0.0 || beSL > newSL) + { + newSL = beSL; + needModify = true; + } + } + + if(InpUseTrailingStop) + { + double trailSL = tick.bid - trailPts * _Point; + if((newSL == 0.0 || trailSL > newSL) && trailSL < tick.bid) + { + newSL = trailSL; + needModify = true; + } + } + } + else if(posType == POSITION_TYPE_SELL) + { + double profitPts = (openPrice - tick.ask) / _Point; + + if(InpUseBreakEven && profitPts >= triggerPts) + { + double beSL = openPrice - InpBreakEvenLockPoints * _Point; + if(newSL == 0.0 || beSL < newSL) + { + newSL = beSL; + needModify = true; + } + } + + if(InpUseTrailingStop) + { + double trailSL = tick.ask + trailPts * _Point; + if((newSL == 0.0 || trailSL < newSL) && trailSL > tick.ask) + { + newSL = trailSL; + needModify = true; + } + } + } + + if(needModify) + trade.PositionModify(InpSymbol, newSL, curTP); +} + +int OnInit() +{ + if(!SymbolSelect(InpSymbol, true)) + { + Print("Failed to select symbol: ", InpSymbol); + return(INIT_FAILED); + } + + trade.SetDeviationInPoints(InpSlippagePoints); + trade.SetExpertMagicNumber(InpMagic); + return(INIT_SUCCEEDED); +} + +void OnTick() +{ + if(_Symbol != InpSymbol) + return; + + ManageOpenPosition(); + if(!IsInAllowedSession()) + return; + if(!IsNewBar(InpSymbol, InpTimeframe)) + return; + + double o1 = iOpen(InpSymbol, InpTimeframe, 1); + double c1 = iClose(InpSymbol, InpTimeframe, 1); + double c2 = iClose(InpSymbol, InpTimeframe, 2); + double e1 = GetEmaValue(InpSymbol, InpTimeframe, InpEmaPeriod, 1); + double e2 = GetEmaValue(InpSymbol, InpTimeframe, InpEmaPeriod, 2); + if(e1 == 0.0 || e2 == 0.0) + return; + + if(InpUseAdxFilter) + { + double adx = GetAdxValue(InpSymbol, InpTimeframe, InpAdxPeriod, 1); + if(adx < InpAdxMin) + return; + } + + bool bullishBody = (c1 > o1) && ((c1 - o1) / _Point >= InpBodyMinPoints); + bool bearishBody = (o1 > c1) && ((o1 - c1) / _Point >= InpBodyMinPoints); + bool crossedUp = (c2 <= e2 && c1 > e1); + bool crossedDown = (c2 >= e2 && c1 < e1); + + bool longSignal = crossedUp && bullishBody; + bool shortSignal = crossedDown && bearishBody; + + bool hasPos = SelectOwnPosition(InpSymbol, InpMagic); + if(hasPos) + { + ENUM_POSITION_TYPE posType = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); + if((posType == POSITION_TYPE_BUY && shortSignal) || + (posType == POSITION_TYPE_SELL && longSignal)) + { + trade.PositionClose(InpSymbol); + hasPos = false; + } + } + + if(hasPos) + return; + + MqlTick tick; + if(!SymbolInfoTick(InpSymbol, tick)) + return; + + double sl = 0.0, tp = 0.0; + if(longSignal) + { + ComputeStops(true, tick.ask, sl, tp); + trade.Buy(InpLots, InpSymbol, tick.ask, sl, tp, "Simple EMA PA Cross V1"); + } + else if(shortSignal) + { + ComputeStops(false, tick.bid, sl, tp); + trade.Sell(InpLots, InpSymbol, tick.bid, sl, tp, "Simple EMA PA Cross V1"); + } +} + diff --git a/lab/EAs/SimpleFibonacci/main.mq5 b/lab/EAs/SimpleFibonacci/main.mq5 new file mode 100644 index 0000000..509c229 --- /dev/null +++ b/lab/EAs/SimpleFibonacci/main.mq5 @@ -0,0 +1,378 @@ +#property strict +#property version "1.00" + +#include + +input group "=== Common ===" +input string InpSymbol = "BTCUSD"; +input ENUM_TIMEFRAMES InpTimeframe = PERIOD_M15; +input int InpSlippagePoints = 30; +input int InpPivotLookbackBars = 120; +input int InpMinSwingPoints = 500; + +input group "=== Robot 1: Fibonacci Retracement ===" +input bool FR_Enabled = true; +input int FR_Magic = 920101; +input double FR_Lots = 0.01; +input bool FR_BuyAt618 = true; +input bool FR_BuyAt500 = false; +input bool FR_UseHardSLTP = true; +input double FR_SL_BufferPoints = 400; +input double FR_TP_BufferPoints = 400; +input int FR_MaxHoldingBars = 96; // time-stop safety +input bool FR_CloseOnStructureBreak = true; // close if recent swing low breaks + +input group "=== Robot 2: Fibonacci Trend Extension ===" +input bool FE_Enabled = true; +input int FE_Magic = 920202; +input double FE_Lots = 0.01; +input bool FE_UseHardSLTP = true; +input double FE_SL_BufferPoints = 400; +input double FE_ExtensionLevel = 1.272; // Common values: 1.272 / 1.618 +input int FE_MinBarsBetweenTrades = 6; +input double FE_MinStopPoints = 3000; +input int FE_AtrPeriod = 14; +input double FE_MinStopAtrMult = 1.2; +input double FE_MinRR = 1.5; + +CTrade trade; +datetime g_lastBarTime = 0; +datetime g_lastFEEntryTime = 0; +datetime g_lastFREntryTime = 0; + +bool IsNewBar(const string symbol, ENUM_TIMEFRAMES tf) +{ + datetime t = iTime(symbol, tf, 0); + if(t <= 0 || t == g_lastBarTime) + return false; + g_lastBarTime = t; + return true; +} + +bool GetLowestLow(const string symbol, ENUM_TIMEFRAMES tf, const int bars, int &idx, double &price) +{ + idx = iLowest(symbol, tf, MODE_LOW, bars, 1); + if(idx < 0) + return false; + price = iLow(symbol, tf, idx); + return (price > 0.0); +} + +bool GetHighestHigh(const string symbol, ENUM_TIMEFRAMES tf, const int bars, int &idx, double &price) +{ + idx = iHighest(symbol, tf, MODE_HIGH, bars, 1); + if(idx < 0) + return false; + price = iHigh(symbol, tf, idx); + return (price > 0.0); +} + +double GetAtrPrice(const string symbol, ENUM_TIMEFRAMES tf, const int period) +{ + int hAtr = iATR(symbol, tf, period); + if(hAtr == INVALID_HANDLE) + return 0.0; + double b[1]; + if(CopyBuffer(hAtr, 0, 1, 1, b) <= 0) + { + IndicatorRelease(hAtr); + return 0.0; + } + IndicatorRelease(hAtr); + return b[0]; +} + +bool PositionExistsByMagic(const string symbol, const int magic) +{ + for(int i = PositionsTotal() - 1; i >= 0; --i) + { + ulong t = PositionGetTicket(i); + if(t == 0) + continue; + if(PositionGetString(POSITION_SYMBOL) == symbol && + (int)PositionGetInteger(POSITION_MAGIC) == magic) + return true; + } + return false; +} + +bool GetPositionByMagic(const string symbol, const int magic, ulong &ticket, ENUM_POSITION_TYPE &posType, datetime &openTime) +{ + for(int i = PositionsTotal() - 1; i >= 0; --i) + { + ulong t = PositionGetTicket(i); + if(t == 0) + continue; + if(PositionGetString(POSITION_SYMBOL) == symbol && + (int)PositionGetInteger(POSITION_MAGIC) == magic) + { + ticket = t; + posType = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE); + openTime = (datetime)PositionGetInteger(POSITION_TIME); + return true; + } + } + return false; +} + +double NormalizePrice(const string symbol, const double price) +{ + int digits = (int)SymbolInfoInteger(symbol, SYMBOL_DIGITS); + return NormalizeDouble(price, digits); +} + +bool ValidateAndAdjustStops(const bool isBuy, double &sl, double &tp) +{ + if(sl == 0.0 && tp == 0.0) + return true; + + MqlTick tick; + if(!SymbolInfoTick(InpSymbol, tick)) + return false; + + int stopsLevelPts = (int)SymbolInfoInteger(InpSymbol, SYMBOL_TRADE_STOPS_LEVEL); + int freezeLevelPts = (int)SymbolInfoInteger(InpSymbol, SYMBOL_TRADE_FREEZE_LEVEL); + double minDist = (double)MathMax(stopsLevelPts, freezeLevelPts) * _Point + 2.0 * _Point; + + if(isBuy) + { + if(sl > 0.0 && sl >= tick.bid - minDist) + sl = tick.bid - minDist; + if(tp > 0.0 && tp <= tick.ask + minDist) + tp = tick.ask + minDist; + if(sl > 0.0 && sl >= tick.bid) + return false; + if(tp > 0.0 && tp <= tick.ask) + return false; + } + else + { + if(sl > 0.0 && sl <= tick.ask + minDist) + sl = tick.ask + minDist; + if(tp > 0.0 && tp >= tick.bid - minDist) + tp = tick.bid - minDist; + if(sl > 0.0 && sl <= tick.ask) + return false; + if(tp > 0.0 && tp >= tick.bid) + return false; + } + + if(sl > 0.0) + sl = NormalizePrice(InpSymbol, sl); + if(tp > 0.0) + tp = NormalizePrice(InpSymbol, tp); + return true; +} + +bool OpenBuy(const int magic, const double lots, const string comment, const double sl, const double tp) +{ + MqlTick tick; + if(!SymbolInfoTick(InpSymbol, tick)) + return false; + double useSL = sl, useTP = tp; + if(!ValidateAndAdjustStops(true, useSL, useTP)) + return false; + trade.SetExpertMagicNumber(magic); + bool ok = trade.Buy(lots, InpSymbol, tick.ask, useSL, useTP, comment); + if(ok && magic == FR_Magic) + g_lastFREntryTime = iTime(InpSymbol, InpTimeframe, 0); + if(ok && magic == FE_Magic) + g_lastFEEntryTime = iTime(InpSymbol, InpTimeframe, 0); + return ok; +} + +bool OpenSell(const int magic, const double lots, const string comment, const double sl, const double tp) +{ + MqlTick tick; + if(!SymbolInfoTick(InpSymbol, tick)) + return false; + double useSL = sl, useTP = tp; + if(!ValidateAndAdjustStops(false, useSL, useTP)) + return false; + trade.SetExpertMagicNumber(magic); + bool ok = trade.Sell(lots, InpSymbol, tick.bid, useSL, useTP, comment); + if(ok && magic == FE_Magic) + g_lastFEEntryTime = iTime(InpSymbol, InpTimeframe, 0); + return ok; +} + +void RunFibonacciRetracement() +{ + if(!FR_Enabled) + return; + if(PositionExistsByMagic(InpSymbol, FR_Magic)) + return; + + int idxLow = -1, idxHigh = -1; + double swingLow = 0.0, swingHigh = 0.0; + if(!GetLowestLow(InpSymbol, InpTimeframe, InpPivotLookbackBars, idxLow, swingLow)) + return; + if(!GetHighestHigh(InpSymbol, InpTimeframe, InpPivotLookbackBars, idxHigh, swingHigh)) + return; + + double rangePts = (swingHigh - swingLow) / _Point; + if(rangePts < InpMinSwingPoints) + return; + + // Uptrend retracement model: low appears before high. + bool upSwing = (idxLow > idxHigh); + if(!upSwing) + return; + + double fib50 = swingHigh - (swingHigh - swingLow) * 0.500; + double fib61 = swingHigh - (swingHigh - swingLow) * 0.618; + + MqlTick tick; + if(!SymbolInfoTick(InpSymbol, tick)) + return; + + double sl = 0.0, tp = 0.0; + if(FR_UseHardSLTP) + { + // Positional levels: SL below swing low, TP near prior swing high breakout. + sl = swingLow - FR_SL_BufferPoints * _Point; + tp = swingHigh + FR_TP_BufferPoints * _Point; + } + + if(FR_BuyAt618 && tick.ask <= fib61) + OpenBuy(FR_Magic, FR_Lots, "FiboRetrace-61.8 Buy", sl, tp); + else if(FR_BuyAt500 && tick.ask <= fib50) + OpenBuy(FR_Magic, FR_Lots, "FiboRetrace-50.0 Buy", sl, tp); +} + +void ManageFibonacciRetracementExit() +{ + if(!FR_Enabled) + return; + + ulong ticket = 0; + ENUM_POSITION_TYPE posType = WRONG_VALUE; + datetime openTime = 0; + if(!GetPositionByMagic(InpSymbol, FR_Magic, ticket, posType, openTime)) + return; + + int tfSec = PeriodSeconds(InpTimeframe); + if(tfSec <= 0) + tfSec = 60; + int barsHeld = (int)((iTime(InpSymbol, InpTimeframe, 0) - openTime) / tfSec); + + // 1) Time stop: force close stale retracement trades. + if(FR_MaxHoldingBars > 0 && barsHeld >= FR_MaxHoldingBars) + { + trade.PositionClose(ticket); + return; + } + + // 2) Structure invalidation: if latest swing violates the trade idea, exit. + if(FR_CloseOnStructureBreak) + { + int idxLow = -1, idxHigh = -1; + double swingLow = 0.0, swingHigh = 0.0; + if(GetLowestLow(InpSymbol, InpTimeframe, InpPivotLookbackBars, idxLow, swingLow) && + GetHighestHigh(InpSymbol, InpTimeframe, InpPivotLookbackBars, idxHigh, swingHigh)) + { + MqlTick tick; + if(SymbolInfoTick(InpSymbol, tick)) + { + double invalidateBuffer = FR_SL_BufferPoints * _Point; + if(posType == POSITION_TYPE_BUY && tick.bid < (swingLow - invalidateBuffer)) + trade.PositionClose(ticket); + else if(posType == POSITION_TYPE_SELL && tick.ask > (swingHigh + invalidateBuffer)) + trade.PositionClose(ticket); + } + } + } +} + +void RunFibonacciExtension() +{ + if(!FE_Enabled) + return; + if(PositionExistsByMagic(InpSymbol, FE_Magic)) + return; + if(g_lastFEEntryTime > 0) + { + int tfSec = PeriodSeconds(InpTimeframe); + if(tfSec > 0) + { + int barsSince = (int)((iTime(InpSymbol, InpTimeframe, 0) - g_lastFEEntryTime) / tfSec); + if(barsSince < FE_MinBarsBetweenTrades) + return; + } + } + + int idxLow = -1, idxHigh = -1; + double swingLow = 0.0, swingHigh = 0.0; + if(!GetLowestLow(InpSymbol, InpTimeframe, InpPivotLookbackBars, idxLow, swingLow)) + return; + if(!GetHighestHigh(InpSymbol, InpTimeframe, InpPivotLookbackBars, idxHigh, swingHigh)) + return; + + double rangePts = (swingHigh - swingLow) / _Point; + if(rangePts < InpMinSwingPoints) + return; + + MqlTick tick; + if(!SymbolInfoTick(InpSymbol, tick)) + return; + + // Continuation breakout model: + // - If up swing (low before high), buy above swing high and target extension. + // - If down swing (high before low), sell below swing low and target extension. + bool upSwing = (idxLow > idxHigh); + + if(upSwing && tick.ask > swingHigh) + { + double sl = 0.0, tp = 0.0; + if(FE_UseHardSLTP) + { + sl = swingHigh - FE_SL_BufferPoints * _Point; + double extTP = swingLow + (swingHigh - swingLow) * FE_ExtensionLevel; + double atr = GetAtrPrice(InpSymbol, InpTimeframe, FE_AtrPeriod); + double minRisk = MathMax(FE_MinStopPoints * _Point, atr * FE_MinStopAtrMult); + double risk = tick.ask - sl; + if(risk < minRisk) + return; // Skip fragile entries with overly tight stop. + double rrTP = tick.ask + risk * FE_MinRR; + tp = MathMax(extTP, rrTP); + } + OpenBuy(FE_Magic, FE_Lots, "FiboExtension Buy", sl, tp); + } + else if(!upSwing && tick.bid < swingLow) + { + double sl = 0.0, tp = 0.0; + if(FE_UseHardSLTP) + { + sl = swingLow + FE_SL_BufferPoints * _Point; + double extTP = swingHigh - (swingHigh - swingLow) * FE_ExtensionLevel; + double atr = GetAtrPrice(InpSymbol, InpTimeframe, FE_AtrPeriod); + double minRisk = MathMax(FE_MinStopPoints * _Point, atr * FE_MinStopAtrMult); + double risk = sl - tick.bid; + if(risk < minRisk) + return; // Skip fragile entries with overly tight stop. + double rrTP = tick.bid - risk * FE_MinRR; + tp = MathMin(extTP, rrTP); + } + OpenSell(FE_Magic, FE_Lots, "FiboExtension Sell", sl, tp); + } +} + +int OnInit() +{ + if(!SymbolSelect(InpSymbol, true)) + return(INIT_FAILED); + trade.SetDeviationInPoints(InpSlippagePoints); + return(INIT_SUCCEEDED); +} + +void OnTick() +{ + if(_Symbol != InpSymbol) + return; + if(!IsNewBar(InpSymbol, InpTimeframe)) + return; + + ManageFibonacciRetracementExit(); + RunFibonacciRetracement(); + RunFibonacciExtension(); +} diff --git a/lab/EAs/SimpleTrendline.mq5 b/lab/EAs/SimpleTrendline.mq5 new file mode 100644 index 0000000..e69de29 diff --git a/lab/EAs/rsi-scalping.mq5 b/lab/EAs/rsi-scalping.mq5 new file mode 100644 index 0000000..71b76c6 --- /dev/null +++ b/lab/EAs/rsi-scalping.mq5 @@ -0,0 +1,381 @@ +//+------------------------------------------------------------------+ +//| rsi-scalping.mq5 | +//| Lab EA: EMA 9/21 + Stochastic RSI — M1 scalping rules (tutorial) | +//+------------------------------------------------------------------+ +#property copyright "Lab" +#property version "1.00" + +#include + +//--- inputs: indicator tuning (video defaults) +input ENUM_TIMEFRAMES InpTf = PERIOD_M1; // Chart / signal timeframe +input int InpEmaFast = 9; // EMA fast (short-term) +input int InpEmaSlow = 21; // EMA slow (trend) +input int InpRsiLen = 14; // RSI length (Stoch RSI core) +input int InpStochLen = 14; // Stochastic lookback on RSI +input int InpStochK = 4; // Stoch RSI %K smoothing +input int InpStochD = 7; // Stoch RSI %D smoothing +input double InpObLevel = 80.0; // Overbought line +input double InpOsLevel = 20.0; // Oversold line +//--- filters +input bool InpUseMidZoneFilter = true; // Skip if K,D in 40–60 (indecision) +input int InpMinBarsSinceCross = 10; // Min bars between EMA crosses +input bool InpUseHtfFilter = false; // Align with higher TF EMAs +input ENUM_TIMEFRAMES InpHtf = PERIOD_M5; // Higher timeframe +input double InpMinEmaSepPts = 0.0; // Min |EMA9-EMA21| in points (0=off) +//--- risk +input double InpLots = 0.01; +input int InpSlBufferPts = 20; // Extra SL beyond last 2-bar extreme +input double InpTpRiskMultiple = 1.75; // TP = risk * this (1.5–2.0 typical) +input bool InpExitOnEma9Break = true; // Close long if close < EMA9 (vice versa shorts) +input bool InpExitOnStochZone = true; // Close long at Stoch RSI ≥ OB; short at ≤ OS +//--- session +input ulong InpMagic = 20260412; +input int InpSlippagePts = 30; + +CTrade g_trade; + +int g_hEmaFast = INVALID_HANDLE; +int g_hEmaSlow = INVALID_HANDLE; +int g_hRsi = INVALID_HANDLE; +int g_hEmaFastHtf = INVALID_HANDLE; +int g_hEmaSlowHtf = INVALID_HANDLE; + +double g_emaFast[]; +double g_emaSlow[]; +double g_rsi[]; +double g_stochK[]; +double g_stochD[]; +double g_emaFastHtf[]; +double g_emaSlowHtf[]; + +//+------------------------------------------------------------------+ +int OnInit() +{ + g_trade.SetExpertMagicNumber(InpMagic); + g_trade.SetDeviationInPoints(InpSlippagePts); + SetTradeFillingBySymbol(); + + g_hEmaFast = iMA(_Symbol, InpTf, InpEmaFast, 0, MODE_EMA, PRICE_CLOSE); + g_hEmaSlow = iMA(_Symbol, InpTf, InpEmaSlow, 0, MODE_EMA, PRICE_CLOSE); + g_hRsi = iRSI(_Symbol, InpTf, InpRsiLen, PRICE_CLOSE); + if(InpUseHtfFilter) + { + g_hEmaFastHtf = iMA(_Symbol, InpHtf, InpEmaFast, 0, MODE_EMA, PRICE_CLOSE); + g_hEmaSlowHtf = iMA(_Symbol, InpHtf, InpEmaSlow, 0, MODE_EMA, PRICE_CLOSE); + } + + if(g_hEmaFast == INVALID_HANDLE || g_hEmaSlow == INVALID_HANDLE || g_hRsi == INVALID_HANDLE) + return INIT_FAILED; + if(InpUseHtfFilter && (g_hEmaFastHtf == INVALID_HANDLE || g_hEmaSlowHtf == INVALID_HANDLE)) + return INIT_FAILED; + + ArraySetAsSeries(g_emaFast, true); + ArraySetAsSeries(g_emaSlow, true); + ArraySetAsSeries(g_rsi, true); + ArraySetAsSeries(g_stochK, true); + ArraySetAsSeries(g_stochD, true); + ArraySetAsSeries(g_emaFastHtf, true); + ArraySetAsSeries(g_emaSlowHtf, true); + + return INIT_SUCCEEDED; +} + +//+------------------------------------------------------------------+ +void OnDeinit(const int reason) +{ + if(g_hEmaFast != INVALID_HANDLE) IndicatorRelease(g_hEmaFast); + if(g_hEmaSlow != INVALID_HANDLE) IndicatorRelease(g_hEmaSlow); + if(g_hRsi != INVALID_HANDLE) IndicatorRelease(g_hRsi); + if(g_hEmaFastHtf != INVALID_HANDLE) IndicatorRelease(g_hEmaFastHtf); + if(g_hEmaSlowHtf != INVALID_HANDLE) IndicatorRelease(g_hEmaSlowHtf); +} + +//+------------------------------------------------------------------+ +void OnTick() +{ + static datetime last_bar = 0; + datetime t = iTime(_Symbol, InpTf, 0); + if(t == last_bar) + { + // Still manage exits on tick if you use break-even / trailing — here bar-based only + return; + } + last_bar = t; + + const int need = 400; + if(CopyBuffer(g_hEmaFast, 0, 0, need, g_emaFast) < need) return; + if(CopyBuffer(g_hEmaSlow, 0, 0, need, g_emaSlow) < need) return; + if(CopyBuffer(g_hRsi, 0, 0, need + InpStochLen + InpStochK + InpStochD + 5, g_rsi) < need) return; + + if(!ComputeStochRsi(g_rsi, InpStochLen, InpStochK, InpStochD, g_stochK, g_stochD, need)) + return; + + if(InpUseHtfFilter) + { + if(CopyBuffer(g_hEmaFastHtf, 0, 0, 3, g_emaFastHtf) < 3) return; + if(CopyBuffer(g_hEmaSlowHtf, 0, 0, 3, g_emaSlowHtf) < 3) return; + } + + // bar 1 = last closed candle (tutorial: trade after confirmation candle closes) + const int c = 1; + const int p = 2; + + if(PositionExistsForMagic()) + { + ManageOpenPosition(c, p); + return; + } + + if(!PassesFlatEmaFilter(c)) + return; + + // Long: EMA9 crosses EMA21 up at bar 1 close; Stoch RSI K,D leave oversold with bullish K/D cross + const bool bull_cross = (g_emaFast[p] < g_emaSlow[p] && g_emaFast[c] > g_emaSlow[c]); + const bool bear_cross = (g_emaFast[p] > g_emaSlow[p] && g_emaFast[c] < g_emaSlow[c]); + + if(!bull_cross && !bear_cross) + return; + + if(InpUseHtfFilter) + { + if(bull_cross && !(g_emaFastHtf[c] > g_emaSlowHtf[c])) + return; + if(bear_cross && !(g_emaFastHtf[c] < g_emaSlowHtf[c])) + return; + } + + if(!MinBarsSincePreviousCrossOk()) + return; + + const bool stoch_long_ok = + (g_stochK[p] < InpOsLevel && g_stochD[p] < InpOsLevel) && + (g_stochK[c] > g_stochD[c] && g_stochK[p] <= g_stochD[p]) && + (g_stochK[c] > InpOsLevel * 0.9); // "left" oversold — allow ~18 if OS=20 + + const bool stoch_short_ok = + (g_stochK[p] > InpObLevel && g_stochD[p] > InpObLevel) && + (g_stochK[c] < g_stochD[c] && g_stochK[p] >= g_stochD[p]) && + (g_stochK[c] < InpObLevel * 1.05); + + if(InpUseMidZoneFilter) + { + if(g_stochK[c] > 40.0 && g_stochK[c] < 60.0 && g_stochD[c] > 40.0 && g_stochD[c] < 60.0) + return; + } + + if(bull_cross && stoch_long_ok) + { + double ask = SymbolInfoDouble(_Symbol, SYMBOL_ASK); + double pt = SymbolInfoDouble(_Symbol, SYMBOL_POINT); + int dg = (int)SymbolInfoInteger(_Symbol, SYMBOL_DIGITS); + double low12 = MathMin(iLow(_Symbol, InpTf, c), iLow(_Symbol, InpTf, p)); + double sl = low12 - InpSlBufferPts * pt; + sl = NormalizeDouble(sl, dg); + if(sl >= ask - pt) + sl = ask - 10 * pt; + double risk = ask - sl; + if(risk <= 0) return; + double tp = ask + risk * InpTpRiskMultiple; + tp = NormalizeDouble(tp, dg); + g_trade.Buy(InpLots, _Symbol, ask, sl, tp, "EMA+StochRSI long"); + return; + } + + if(bear_cross && stoch_short_ok) + { + double bid = SymbolInfoDouble(_Symbol, SYMBOL_BID); + double pt = SymbolInfoDouble(_Symbol, SYMBOL_POINT); + int dg = (int)SymbolInfoInteger(_Symbol, SYMBOL_DIGITS); + double hi12 = MathMax(iHigh(_Symbol, InpTf, c), iHigh(_Symbol, InpTf, p)); + double sl = hi12 + InpSlBufferPts * pt; + sl = NormalizeDouble(sl, dg); + if(sl <= bid + pt) + sl = bid + 10 * pt; + double risk = sl - bid; + if(risk <= 0) return; + double tp = bid - risk * InpTpRiskMultiple; + tp = NormalizeDouble(tp, dg); + g_trade.Sell(InpLots, _Symbol, bid, sl, tp, "EMA+StochRSI short"); + } +} + +//+------------------------------------------------------------------+ +bool ComputeStochRsi(const double &rsi[], const int stoch_len, const int k_len, const int d_len, + double &out_k[], double &out_d[], const int out_count) +{ + int rsi_count = ArraySize(rsi); + static double raw[]; + ArrayResize(raw, rsi_count); + ArraySetAsSeries(raw, true); + + for(int i = 0; i < rsi_count; i++) + { + if(i + stoch_len > rsi_count) + { + raw[i] = 50.0; + continue; + } + double lo = rsi[i]; + double hi = rsi[i]; + for(int j = 0; j < stoch_len; j++) + { + double v = rsi[i + j]; + if(v < lo) lo = v; + if(v > hi) hi = v; + } + if(hi == lo) + raw[i] = 50.0; + else + raw[i] = (rsi[i] - lo) / (hi - lo) * 100.0; + } + + ArrayResize(out_k, out_count); + ArrayResize(out_d, out_count); + ArraySetAsSeries(out_k, true); + ArraySetAsSeries(out_d, true); + + static double k_unsm[]; + ArrayResize(k_unsm, rsi_count); + ArraySetAsSeries(k_unsm, true); + + for(int i = 0; i < rsi_count; i++) + { + if(i + k_len > rsi_count) + { + k_unsm[i] = raw[i]; + continue; + } + double s = 0.0; + for(int j = 0; j < k_len; j++) + s += raw[i + j]; + k_unsm[i] = s / (double)k_len; + } + + for(int i = 0; i < out_count; i++) + { + if(i + d_len > rsi_count) + { + out_k[i] = k_unsm[i]; + out_d[i] = k_unsm[i]; + continue; + } + double sk = 0.0; + for(int j = 0; j < d_len; j++) + sk += k_unsm[i + j]; + out_d[i] = sk / (double)d_len; + out_k[i] = k_unsm[i]; + } + return true; +} + +//+------------------------------------------------------------------+ +bool PassesFlatEmaFilter(const int c) +{ + if(InpMinEmaSepPts <= 0.0) + return true; + double pt = SymbolInfoDouble(_Symbol, SYMBOL_POINT); + double sep = MathAbs(g_emaFast[c] - g_emaSlow[c]) / pt; + return (sep >= InpMinEmaSepPts); +} + +//+------------------------------------------------------------------+ +bool MinBarsSincePreviousCrossOk() +{ + if(InpMinBarsSinceCross <= 0) + return true; + // Cross under test completed on bar 1 (index c=1): between shift 2 and 1. + // Earliest earlier cross: between i+1 and i for i >= 3. + for(int i = 3; i < 300; i++) + { + const bool cu = (g_emaFast[i + 1] < g_emaSlow[i + 1] && g_emaFast[i] > g_emaSlow[i]); + const bool cd = (g_emaFast[i + 1] > g_emaSlow[i + 1] && g_emaFast[i] < g_emaSlow[i]); + if(cu || cd) + return (i - 1 >= InpMinBarsSinceCross); + } + return true; +} + +//+------------------------------------------------------------------+ +bool PositionExistsForMagic() +{ + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + ulong ticket = PositionGetTicket(i); + if(ticket == 0) continue; + if(!PositionSelectByTicket(ticket)) continue; + if(PositionGetString(POSITION_SYMBOL) != _Symbol) continue; + if((ulong)PositionGetInteger(POSITION_MAGIC) == InpMagic) + return true; + } + return false; +} + +//+------------------------------------------------------------------+ +void SetTradeFillingBySymbol() +{ + long mask = SymbolInfoInteger(_Symbol, SYMBOL_FILLING_MODE); + if((mask & SYMBOL_FILLING_IOC) != 0) + g_trade.SetTypeFilling(ORDER_FILLING_IOC); + else if((mask & SYMBOL_FILLING_FOK) != 0) + g_trade.SetTypeFilling(ORDER_FILLING_FOK); + else + g_trade.SetTypeFilling(ORDER_FILLING_RETURN); +} + +//+------------------------------------------------------------------+ +void ManageOpenPosition(const int c, const int p) +{ + if(!PositionSelectBySymbolForMagic()) + return; + ulong ticket = (ulong)PositionGetInteger(POSITION_TICKET); + long type = PositionGetInteger(POSITION_TYPE); + double k1 = g_stochK[c]; + double d1 = g_stochD[c]; + + if(InpExitOnEma9Break) + { + double close1 = iClose(_Symbol, InpTf, c); + if(type == POSITION_TYPE_BUY && close1 < g_emaFast[c]) + { + g_trade.PositionClose(ticket); + return; + } + if(type == POSITION_TYPE_SELL && close1 > g_emaFast[c]) + { + g_trade.PositionClose(ticket); + return; + } + } + + if(InpExitOnStochZone) + { + if(type == POSITION_TYPE_BUY && k1 >= InpObLevel && d1 >= InpObLevel * 0.95) + { + g_trade.PositionClose(ticket); + return; + } + if(type == POSITION_TYPE_SELL && k1 <= InpOsLevel && d1 <= InpOsLevel * 1.05) + { + g_trade.PositionClose(ticket); + return; + } + } +} + +//+------------------------------------------------------------------+ +bool PositionSelectBySymbolForMagic() +{ + for(int i = PositionsTotal() - 1; i >= 0; i--) + { + ulong t = PositionGetTicket(i); + if(t == 0) continue; + if(!PositionSelectByTicket(t)) continue; + if(PositionGetString(POSITION_SYMBOL) != _Symbol) continue; + if((ulong)PositionGetInteger(POSITION_MAGIC) == InpMagic) + return true; + } + return false; +} + +//+------------------------------------------------------------------+ diff --git a/lab/EAs/rsisauce-optimize.set b/lab/EAs/rsisauce-optimize.set new file mode 100644 index 0000000..d0dc530 --- /dev/null +++ b/lab/EAs/rsisauce-optimize.set @@ -0,0 +1,25 @@ +; saved for genetic optimization — rsi-scalping (rsisauce) lab EA +; copy to: ...\MQL5\Profiles\Tester\ then Load from Inputs tab +; last field: Y = optimize, N = fixed +; +InpTf=1||0||0||49153||N +InpEmaFast=9||5||1||15||Y +InpEmaSlow=21||15||1||34||Y +InpRsiLen=14||10||1||21||Y +InpStochLen=14||8||1||24||Y +InpStochK=4||3||1||8||Y +InpStochD=7||3||1||12||Y +InpObLevel=80.0||72.0||1.0||88.0||Y +InpOsLevel=20.0||12.0||1.0||28.0||Y +InpUseMidZoneFilter=true||false||0||true||N +InpMinBarsSinceCross=10||4||1||18||Y +InpUseHtfFilter=false||false||0||true||N +InpHtf=5||0||0||49153||N +InpMinEmaSepPts=0.0||0.0||2.0||40.0||Y +InpLots=0.01||0.01||0.001000||0.100000||N +InpSlBufferPts=20||5||2||60||Y +InpTpRiskMultiple=1.75||1.25||0.05||2.50||Y +InpExitOnEma9Break=true||false||0||true||N +InpExitOnStochZone=true||false||0||true||N +InpMagic=20260412||20260412||1||202604120||N +InpSlippagePts=30||30||1||300||N