Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v3.001-dev-new #742

Open
wants to merge 91 commits into
base: v3.000.1-dev
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
91 commits
Select commit Hold shift + click to select a range
dbf7af0
Indicator: Adds IndicatorTick
kenorb Oct 28, 2021
6cc1f53
Merge tag 'v2.009' into dev-indicatortick
kenorb Nov 8, 2021
d829961
Indicator: Fixes compilation errors
kenorb Nov 9, 2021
b05cd01
Merge remote-tracking branch 'nseam/dev-getvalue-refactor' into dev-i…
kenorb Nov 9, 2021
e8554a1
IndicatorTick: Fixes compilation errors
kenorb Nov 9, 2021
53310b4
Indicators: Adds Indi_TickMt
kenorb Oct 31, 2021
ad83367
Tick/Indi_TickMt: Renames GetValue() to GetMixedValue()
kenorb Nov 9, 2021
28ff4d4
IndicatorTick: Implements tick fetching logic
kenorb Nov 9, 2021
565e493
Indicator: Renames GetMixedValue to GetEntryValue
kenorb Nov 8, 2021
42a6879
Indicator/IndicatorTick: Fixes return type
kenorb Nov 8, 2021
16385fd
Indicator: Moving some methods from base class to main
kenorb Nov 9, 2021
cbfb318
Merge remote-tracking branch 'origin/master' into dev-indicatortick
kenorb Nov 9, 2021
9f9c620
IndicatorTick: Adds SetTick()
kenorb Nov 9, 2021
4115a08
IndicatorTick: Implements test
kenorb Nov 9, 2021
ef95f6f
Indicator: Adds IndicatorCandle class
kenorb Nov 9, 2021
cc38869
Indicator: Adds IndicatorTf class
kenorb Nov 10, 2021
4fbbc91
Indicator: Adds README.md with info about indicators
kenorb Nov 11, 2021
1c9a5eb
Adds CandleOHLC and CandleTOHLC structs
kenorb Nov 11, 2021
b7b85d6
Buffer: Adds BufferCandle
kenorb Nov 11, 2021
e80fd94
Indicator/IndicatorCandle: Adds BufferCandle
kenorb Nov 11, 2021
88e4c71
Renames MqlTick.h to MqlTick.struct.h
kenorb Nov 11, 2021
e0632a6
Renames MqlTick.struct.h to Tick.struct.h
kenorb Nov 11, 2021
f47bd09
Adds TickAB and TickTAB structs
kenorb Nov 11, 2021
cb7ba0d
Buffer: Adds BufferTick
kenorb Nov 11, 2021
11dd812
Chart: ChartTf: Adds SecsToTf()
kenorb Oct 28, 2021
0b2e66f
Indicator/IndicatorTf: Improves constructors
kenorb Nov 11, 2021
112a998
Just some WIP.
nseam Nov 19, 2021
7696319
WIP. Added idea of event listeners for indicators and emitting a hist…
nseam Nov 22, 2021
1d2427a
WIP. Added candle grouping when receiving ticks via OnDataSourceEntry().
nseam Nov 23, 2021
e625d6f
Working simulation of real ticking indicator.
nseam Nov 25, 2021
04378bd
Moved example indicator classes into separate files. Added OnIndicato…
nseam Nov 26, 2021
f7b99ec
Added support for MT4.
nseam Nov 26, 2021
3537a04
WIP. Trying to make "AMA on Candle indicator on Tick indicator" to pr…
nseam Nov 30, 2021
f92dda0
Probably working scenario of AMA <- IndicatorTfDummy(IndicatorCandle)…
nseam Dec 3, 2021
6f3b99a
Fixed Util::ArrayRemove() method.
nseam Dec 3, 2021
83676b6
Merge pull request #619 from nseam/dev-indicator-refactor
kenorb Dec 5, 2021
9603dc3
WIP. i*OnIndicator versions of all indicators (except MA).
nseam Dec 7, 2021
a493f36
WIP. Finished i*OnIndicator mode for all indicators except MA. Change…
nseam Dec 9, 2021
f4c946d
WIP. AMA now requires refactor back to be parent of Indicator or some…
nseam Dec 11, 2021
761face
WIP. Introduces IndicatorCandleSource and IndicatorTickSource indicat…
nseam Dec 15, 2021
fea144a
WIP. Almost working AMA indicator (still varies to much with original…
nseam Dec 16, 2021
0e14527
WIP. Partially working Tick/Candle/TickOrCandle indicators differenti…
nseam Dec 22, 2021
c5be80f
WIP. Closer to the end. Now we need to find a way to feed indicator w…
nseam Dec 29, 2021
88d0a7c
WIP. Now we need to find a way to make BufferTick to provide continuo…
nseam Dec 30, 2021
c2a87cd
AS-IS.
nseam Jan 4, 2022
435f1d1
WIP. IndicatorsTest ready for testing!
nseam Jan 5, 2022
c6bc378
Merge branch 'dev' of https://github.com/EA31337/EA31337-classes into…
nseam Jan 6, 2022
58f94f9
Fixed bug with IndicatorBase::GetValue() which called GetEntryValue()…
nseam Jan 7, 2022
2640ceb
Merge branch 'dev' of https://github.com/EA31337/EA31337-classes into…
nseam Jan 12, 2022
e950493
State of the art
nseam Jan 12, 2022
078af3a
Looks like there is nothing more to do with AMA. Differences are marg…
nseam Jan 13, 2022
871cc70
Fixed order of mode and shift when calling Indicator::GetValue<T>(). …
nseam Jan 18, 2022
8e39201
Fixed order of mode and shift when calling Indicator::GetValue<T>(). …
nseam Jan 18, 2022
9afdefb
Merge pull request #632 from nseam/dev-indicator-refactor
kenorb Jan 18, 2022
71108dc
Fixed typo in auxiliary indicator fetching by ID.
nseam Jan 18, 2022
a469c5e
Merge branch 'dev-indicator-refactor' of https://github.com/EA31337/E…
nseam Jan 18, 2022
6ee889c
Fixes EOL characters
kenorb Jan 18, 2022
74eb036
IndicatorsTest was set to test only AMA or Pattern indicator. Now it …
nseam Jan 19, 2022
a53dbe7
Fixes C++ error: no matching function for call
kenorb May 28, 2023
f83f2a3
Refs #11. Renamed "index" variable names into "_idx" to prevent confl…
nseam Nov 7, 2023
fdb3680
Merge pull request #727 from nseam/v3.000-dev
kenorb Nov 22, 2023
30ed4a8
Refs EA31337/EA31337-indicators-other#8. Added underscores to some fu…
nseam Nov 22, 2023
0ddfa58
Refs EA31337/EA31337-indicators-other#8. Added IndicatorLegacy.h file…
nseam Nov 22, 2023
8f5733b
Merge pull request #731 from nseam/v3.000-dev
kenorb Nov 22, 2023
acbac38
Refs EA31337/Strategy-TDI#1. MA-targeted changes regarding input MA m…
nseam Jan 8, 2024
67e428a
GHA: Fixes compilation workflows
kenorb Feb 18, 2024
a7ce6ce
Merge pull request #734 from nseam/dev-tdi-ima-on-array
kenorb Mar 13, 2024
afbbb7d
Merge branch 'v3.000-dev' into v3.001-dev-new
kenorb Mar 13, 2024
0125d31
Adds initial config for .devcontainer/devcontainer.json
kenorb Apr 19, 2024
7b5996a
Adds vscode's extensions for devcontainer
kenorb Apr 19, 2024
83d5ee7
Merge remote-tracking branch 'nseam/dev-indicator-refactor' into v3.0…
kenorb Apr 19, 2024
b51b818
Merge remote-tracking branch 'origin/v3.000-dev-fixes' into v3.001-de…
kenorb Apr 19, 2024
37fbb72
GHA: Compile: Skips clean-up by default
kenorb Apr 23, 2024
13c20e3
GHA: Compile: Support for workflow calls
kenorb Apr 23, 2024
0ad14d1
Fixes new lines [end-of-file-fixer]
kenorb Apr 23, 2024
0be260b
GHA: Test: Includes compile workflow
kenorb Apr 23, 2024
d66d89c
Fixes compilation errors on build 4275
kenorb Apr 23, 2024
8df6c70
Fixing CompileTest
nseam Jun 15, 2023
d8c2aef
GHA: Compile: Ignores compiling platform files
kenorb Apr 23, 2024
b9aed53
GHA: Compile: Fixes uploading artifacts after compilation
kenorb Apr 24, 2024
07a8183
GHA: Test: Fixes compilation and disables non-working runs
kenorb Apr 24, 2024
d6bde70
IndicatorBase: Adds missing setter for ENUM_INDICATOR_STATE_PROP
kenorb Apr 24, 2024
761b3d7
GHA: Fixes compilation for indicator test workflow
kenorb Apr 24, 2024
7840f19
GHA: Compile: Adds support for path input
kenorb Apr 24, 2024
c827e6a
Refs EA31337-classes/EA31337-indicators-other#13, EA31337-classes/EA3…
nseam Dec 1, 2023
c8889dc
Account/AccountMt: Fixes zero division
kenorb Feb 19, 2022
d4a12c7
Trade: Disables filling modes for MQL4
kenorb Jul 25, 2022
0d62e80
Order: Refresh order after modification
kenorb Jul 21, 2023
d449019
Order: Fixes the current volume value when data in orequest is missing
kenorb Jul 21, 2023
c3a65a3
Trade: TradeParams: Adds max_spread
kenorb Jul 22, 2022
ae5d3df
Workaround for closing order conditions after orders are loaded from …
kenorb Aug 12, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/ubuntu
{
// Configure tool-specific properties.
"customizations": {
"vscode": {
"extensions": [
"L-I-V.mql-tools",
"ms-vscode.cpptools",
"vscodevim.vim"
],
}
},
// Features to add to the dev container. More info: https://containers.dev/features.
"features": {
"ghcr.io/devcontainers-contrib/features/actionlint:1": {},
"ghcr.io/devcontainers-contrib/features/ansible:2": {},
"ghcr.io/guiyomh/features/vim:0": {},
"ghcr.io/jungaretti/features/make:1": {},
"ghcr.io/prulloac/devcontainer-features/pre-commit:1": {},
"ghcr.io/hspaans/devcontainer-features/ansible-lint:1": {}
},
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "mcr.microsoft.com/devcontainers/base:jammy",
"name": "EA31337"
}
78 changes: 75 additions & 3 deletions .github/workflows/compile.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
---
name: Compile

env:
ARTIFACT_PREFIX: ${{ inputs.artifact_prefix || 'mt' }}
COMPILE_PATH: ${{ inputs.path || '*' }}
SKIP_INIT: ${{ inputs.skip_init || false }}

# yamllint disable-line rule:truthy
on:
pull_request:
Expand All @@ -9,18 +14,85 @@ on:
push:
paths-ignore:
- '**.md'
workflow_call:
inputs:
artifact_prefix:
default: mt
description: Artifact prefix.
required: false
type: string
path:
default: '*'
description: Path to compile.
required: false
type: string
skip_cleanup:
default: false
description: Skips a clean-up job.
required: false
type: boolean
skip_init:
default: true
description: Skips initialization of the platform.
required: false
type: boolean

jobs:

Compile:
mt4:
name: Installs platform (4)
uses: EA31337/EA-Tester/.github/workflows/platform-linux.yml@dev
with:
artifact_name: ${{ inputs.artifact_prefix || 'mt' }}4
artifact_overwrite: true
skip_cleanup: true
version: 4
mt5:
name: Installs platform (5)
uses: EA31337/EA-Tester/.github/workflows/platform-linux.yml@dev
with:
artifact_name: ${{ inputs.artifact_prefix || 'mt' }}5
artifact_overwrite: true
skip_cleanup: true
version: 5

compile:
name: Compile
needs: [mt4, mt5]
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: mt${{ matrix.version }}
path: .mt${{ matrix.version }}
- name: Compile
uses: fx31337/mql-compile-action@master
with:
init-platform: true
init-platform: ${{ env.SKIP_INIT == 'false' }}
mt-path: .mt${{ matrix.version }}
path-ignore: .mt${{ matrix.version }}
path: '${{ env.COMPILE_PATH }}/**/*.mq${{ matrix.version }}'
verbose: true
- name: Print compiled files
run: '(Get-ChildItem -Recurse -Path . -Include *.ex[45]).fullname'
shell: powershell
- name: Upload artifacts
uses: actions/upload-artifact@v2
with:
name: files-ex${{ matrix.version }}
path: '**/*.ex[45]'

strategy:
matrix:
version: [4, 5]

cleanup:
if: inputs.skip_cleanup != true
name: Clean-up
needs: [compile]
runs-on: ubuntu-latest
steps:
- uses: geekyeggo/delete-artifact@v5
with:
name: ${{ env.ARTIFACT_PREFIX }}*
33 changes: 9 additions & 24 deletions .github/workflows/test-account.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,36 +14,21 @@ on:

jobs:

Compile:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Compile
uses: fx31337/mql-compile-action@master
with:
init-platform: true
path: 'Account/tests'
verbose: true
- name: Print compiled files
run: '(Get-ChildItem -Recurse -Path . -Include *.ex[45]).fullname'
shell: powershell
- name: Upload artifacts (MQL4)
uses: actions/upload-artifact@v2
with:
name: files-ex4
path: '**/*.ex4'
- name: Upload artifacts (MQL5)
uses: actions/upload-artifact@v2
with:
name: files-ex5
path: '**/*.ex5'
compile:
name: Compile
uses: ./.github/workflows/compile.yml
with:
artifact_prefix: mt
path: Account
skip_cleanup: true

Account-Tests-MQL4:
defaults:
run:
shell: bash
working-directory: Account/tests
needs: Compile
if: false
needs: compile
runs-on: ubuntu-latest
strategy:
matrix:
Expand Down
46 changes: 46 additions & 0 deletions .github/workflows/test-buffer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
name: Test Buffer

# yamllint disable-line rule:truthy
on:
pull_request:
paths:
- 'Buffer/**'
- '.github/workflows/test-buffer.yml'
push:
paths:
- 'Buffer/**'
- '.github/workflows/test-buffer.yml'

jobs:

compile:
name: Compile
uses: ./.github/workflows/compile.yml
with:
artifact_prefix: mt
path: Buffer
skip_cleanup: true

Buffer-Tests-MQL4:
defaults:
run:
shell: bash
working-directory: Buffer/tests
if: false
needs: compile
runs-on: ubuntu-latest
strategy:
matrix:
test:
- BufferCandle.test
- BufferTick.test
steps:
- uses: actions/download-artifact@v2
with:
name: files-ex4
- name: Run ${{ matrix.test }}
uses: fx31337/mql-tester-action@master
with:
Script: ${{ matrix.test }}
timeout-minutes: 10
52 changes: 52 additions & 0 deletions .github/workflows/test-indicator.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
name: Test Indicator

# yamllint disable-line rule:truthy
on:
pull_request:
paths:
- 'Indicator**'
- 'Indicator/**'
- '.github/workflows/test-indicator.yml'
push:
paths:
- 'Indicator**'
- 'Indicator/**'
- '.github/workflows/test-indicator.yml'

jobs:

compile:
name: Compile
uses: ./.github/workflows/compile.yml
with:
artifact_prefix: mt
path: Indicator
skip_cleanup: true

Indicator-Tests-MQL4:
defaults:
run:
shell: bash
working-directory: Indicator/tests
if: false
needs: compile
runs-on: ubuntu-latest
strategy:
matrix:
test:
- IndicatorCandle.test
- IndicatorTf.test
- IndicatorTick.test
steps:
- uses: actions/download-artifact@v2
with:
name: files-ex4
- name: Run ${{ matrix.test }}
uses: fx31337/mql-tester-action@master
with:
BtDays: 4-8
BtMonths: 1
BtYears: 2020
TestExpert: ${{ matrix.test }}
timeout-minutes: 10
33 changes: 9 additions & 24 deletions .github/workflows/test-indicators-special.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,36 +16,21 @@ on:

jobs:

Compile:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Compile
uses: fx31337/mql-compile-action@master
with:
init-platform: true
path: 'Indicators/Special/tests'
verbose: true
- name: Print compiled files
run: '(Get-ChildItem -Recurse -Path . -Include *.ex[45]).fullname'
shell: powershell
- name: Upload artifacts (MQL4)
uses: actions/upload-artifact@v2
with:
name: files-ex4
path: '**/*.ex4'
- name: Upload artifacts (MQL5)
uses: actions/upload-artifact@v2
with:
name: files-ex5
path: '**/*.ex5'
compile:
name: Compile
uses: ./.github/workflows/compile.yml
with:
artifact_prefix: mt
path: Indicators/Special
skip_cleanup: true

Indicators-Tests-MQL4:
defaults:
run:
shell: bash
working-directory: Indicators/tests
needs: Compile
if: false
needs: compile
runs-on: ubuntu-latest
strategy:
matrix:
Expand Down
33 changes: 9 additions & 24 deletions .github/workflows/test-indicators-tick.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,36 +16,21 @@ on:

jobs:

Compile:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Compile
uses: fx31337/mql-compile-action@master
with:
init-platform: true
path: 'Indicators/Tick/tests'
verbose: true
- name: Print compiled files
run: '(Get-ChildItem -Recurse -Path . -Include *.ex[45]).fullname'
shell: powershell
- name: Upload artifacts (MQL4)
uses: actions/upload-artifact@v2
with:
name: files-ex4
path: '**/*.ex4'
- name: Upload artifacts (MQL5)
uses: actions/upload-artifact@v2
with:
name: files-ex5
path: '**/*.ex5'
compile:
name: Compile
uses: ./.github/workflows/compile.yml
with:
artifact_prefix: mt
path: Indicators/Tick
skip_cleanup: true

Indicators-Tests-MQL4:
defaults:
run:
shell: bash
working-directory: Indicators/tests
needs: Compile
if: false
needs: compile
runs-on: ubuntu-latest
strategy:
matrix:
Expand Down
Loading
Loading