Skip to content

Commit

Permalink
Merge pull request #1 from EA31337/v2.000-dev
Browse files Browse the repository at this point in the history
Adds support for new strategies
  • Loading branch information
kenorb authored Sep 23, 2023
2 parents 3bf54dc + e6dfe7a commit fbfc1b3
Show file tree
Hide file tree
Showing 4 changed files with 44 additions and 11 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/backtest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ jobs:
uses: actions/upload-artifact@v2
with:
name: EA
path: '*.ex?'
path: '*.ex[45]'
Test:
needs: Compile
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/compile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,4 +59,4 @@ jobs:
uses: actions/upload-artifact@v2
with:
name: EA
path: '*.ex?'
path: '*.ex[45]'
4 changes: 2 additions & 2 deletions Stg_Meta_Reversal.mq5
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,9 @@ input bool Info_On_Chart = true; // Display info on chart.
#include "Stg_Meta_Reversal.mqh"

// Defines.
#define ea_name "Strategy Meta_Reversal"
#define ea_name "Strategy Meta Reversal"
#define ea_version "2.000"
#define ea_desc "Strategy based on EA31337 framework."
#define ea_desc "Reversal meta strategy reverses signals of another strategy."
#define ea_link "https://github.com/EA31337/Strategy-Meta_Reversal"
#define ea_author "EA31337 Ltd"

Expand Down
47 changes: 40 additions & 7 deletions Stg_Meta_Reversal.mqh
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

// User input params.
INPUT2_GROUP("Meta Reversal strategy: main params");
INPUT2 ENUM_STRATEGY Meta_Reversal_Strategy = STRAT_RSI; // Strategy to reverse signals
INPUT2 ENUM_STRATEGY Meta_Reversal_Strategy = STRAT_ATR; // Strategy to reverse signals
INPUT2_GROUP("Meta Reversal strategy: common params");
INPUT2 float Meta_Reversal_LotSize = 0; // Lot size
INPUT2 int Meta_Reversal_SignalOpenMethod = 0; // Signal open method
Expand Down Expand Up @@ -94,6 +94,9 @@ class Stg_Meta_Reversal : public Strategy {
case STRAT_AMA:
_result &= StrategyAdd<Stg_AMA>(_tf, _magic_no, _sid);
break;
case STRAT_ARROWS:
_result &= StrategyAdd<Stg_Arrows>(_tf, _magic_no, _sid);
break;
case STRAT_ASI:
_result &= StrategyAdd<Stg_ASI>(_tf, _magic_no, _sid);
break;
Expand Down Expand Up @@ -154,14 +157,20 @@ class Stg_Meta_Reversal : public Strategy {
case STRAT_MA:
_result &= StrategyAdd<Stg_MA>(_tf, _magic_no, _sid);
break;
case STRAT_MACD:
_result &= StrategyAdd<Stg_MACD>(_tf, _magic_no, _sid);
case STRAT_MA_CROSS_PIVOT:
_result &= StrategyAdd<Stg_MA_Cross_Pivot>(_tf, _magic_no, _sid);
break;
case STRAT_MA_CROSS_SHIFT:
_result &= StrategyAdd<Stg_MA_Cross_Shift>(_tf, _magic_no, _sid);
break;
case STRAT_META_MIRROR:
_result &= StrategyAdd<Stg_Meta_Mirror>(_tf, _magic_no, _sid);
case STRAT_MA_CROSS_SUP_RES:
_result &= StrategyAdd<Stg_MA_Cross_Sup_Res>(_tf, _magic_no, _sid);
break;
case STRAT_META_MULTI:
_result &= StrategyAdd<Stg_Meta_Multi>(_tf, _magic_no, _sid);
case STRAT_MA_TREND:
_result &= StrategyAdd<Stg_MA_Trend>(_tf, _magic_no, _sid);
break;
case STRAT_MACD:
_result &= StrategyAdd<Stg_MACD>(_tf, _magic_no, _sid);
break;
case STRAT_MFI:
_result &= StrategyAdd<Stg_MFI>(_tf, _magic_no, _sid);
Expand All @@ -172,6 +181,30 @@ class Stg_Meta_Reversal : public Strategy {
case STRAT_OBV:
_result &= StrategyAdd<Stg_OBV>(_tf, _magic_no, _sid);
break;
case STRAT_OSCILLATOR:
_result &= StrategyAdd<Stg_Oscillator>(_tf, _magic_no, _sid);
break;
case STRAT_OSCILLATOR_DIVERGENCE:
_result &= StrategyAdd<Stg_Oscillator_Divergence>(_tf, _magic_no, _sid);
break;
case STRAT_OSCILLATOR_MULTI:
_result &= StrategyAdd<Stg_Oscillator_Multi>(_tf, _magic_no, _sid);
break;
case STRAT_OSCILLATOR_CROSS:
_result &= StrategyAdd<Stg_Oscillator_Cross>(_tf, _magic_no, _sid);
break;
case STRAT_OSCILLATOR_CROSS_SHIFT:
_result &= StrategyAdd<Stg_Oscillator_Cross_Shift>(_tf, _magic_no, _sid);
break;
case STRAT_OSCILLATOR_CROSS_ZERO:
_result &= StrategyAdd<Stg_Oscillator_Cross_Zero>(_tf, _magic_no, _sid);
break;
case STRAT_OSCILLATOR_RANGE:
_result &= StrategyAdd<Stg_Oscillator_Range>(_tf, _magic_no, _sid);
break;
case STRAT_OSCILLATOR_TREND:
_result &= StrategyAdd<Stg_Oscillator_Trend>(_tf, _magic_no, _sid);
break;
case STRAT_OSMA:
_result &= StrategyAdd<Stg_OsMA>(_tf, _magic_no, _sid);
break;
Expand Down

0 comments on commit fbfc1b3

Please sign in to comment.