Code mql4

Code mql4

Code mql4

anhtuan750

Active Member
47
24
Chào các Bạn,
Đầu tiên chúc các Bạn GD thành công.
Trong lần viết trước đây, tớ có xin các Bạn một đoạn code viết nhận dạng về thị trường sideway và có Bạn đã chỉ cho tớ đường dẫn đến trang web của mql4 và cảm ơn Bạn Thanh Ngà đã nhiệt tình cho SĐT và gợi ý dùng loop để rà soát nến.
Thật ra trang web mql4 và mql5 tớ đều biết, nhưng kg mấy quan tâm, nay ví bí quá nên vào tìm xem có Robot nào viết tương tự yêu cầu của tớ kg; Và thật kg ngờ , ở đây có vô số các EA Free từ đơn giản đến phức tạp viết về đủ các xu hướng thị trường và sử dụng các indicator khác nhau.... Rất mừng.....
Thứ nữa trên các trang này (tớ chỉ quan tâm đên trang web mql4 vì kg xài MT5), còn có cả các bài học để hiểu và viết code từ đơn giản đến nâng cao rất là bổ ích, các bài học này (đương nhiên là = tiếng anh) còn dễ hiểu hơn cả (vì load ra file chữ cho mình có thời gian nghiền ngẫm) 21 video của anh Phạm Thanh Tú trên mạng mà mình đã tự học- Nhân đây Tôi xin một lần nữa gởi lời cảm ơn Thầy Phạm Thanh Tú đã cung cấp các video free hướng dẫn về .lập trình Robot Forex.
Và đây là lý do chính tớ viết bài này để các Bạn nào đang mày mò tìm hiểu về các EA có thêm thông tin để tăng nguồn cảm hứng của mình.
Như trên mình có nói Bạn Thanh Ngà gợi ý dùng hàm loop để dò xét market và mình đã làm như vậy để dò xét khi nào thì "market được xem là có trend, kg trend hay sideway"_ suy đoán này do từng người tự định nghĩa mà có; và đã rất thỏa mãn ( trước đây con EA của mình cứ chạy ngon lành khi market là trend, đến khi sideway thì nó sai be bét....) vì nay đã hạn chế các sai sót này rất là hiệu quả. Cái đoạn order mình viết khoảng 15-20 dòng. Nhưng nay thì trên Web mql4 có hướng dẫn dùng 2 hàm iHighest và iLowest là có thể dò cả một đoạn Bars bất kể dài , ngắn, bất kể bắt đầu từ đâu..., và viết chỉ mấy dòng, rất ư là đơn giản. Dưới đây là 2 hàm đó để các Bạn tham khảo. Chúc các Bạn thành công với đam mê của mình.

iHighest
Returns the shift of the maximum value over a specific number of bars depending on type.
int iHighest(
string symbol, // symbol
int timeframe, // timeframe
int type, // timeseries
int count, // cont
int start // start
);
[TBODY] [/TBODY]
Parameters
symbol
[in] Symbol the data of which should be used for search. NULL means the current symbol.
timeframe
[in] Timeframe. It can be any of ENUM_TIMEFRAMES enumeration values. 0 means the current chart timeframe.
type
[in] Series array identifier. It can be any of the Series array identifier enumeration values.
count=WHOLE_ARRAY
[in] Number of bars (in direction from the start bar to the back one) on which the search is carried out.
start=0
[in] Shift showing the bar, relative to the current bar, that the data should be taken from.
Returned value
The shift of the maximum value over a specific number of bars or -1 if error. To check errors, one has to call the GetLastError() function.
Example:
double val;
//--- calculating the highest value on the 20 consecutive bars in the range
//--- from the 4th to the 23rd index inclusive on the current chart
int val_index=iHighest(NULL,0,MODE_HIGH,20,4);
if(val_index!=-1) val=High[val_index];
else PrintFormat("Error in call iHighest. Error code=%d",GetLastError());
[TBODY] [/TBODY]
iHighiLow
iLowest
Returns the shift of the lowest value over a specific number of bars depending on type.
int iLowest(
string symbol, // symbol
int timeframe, // timeframe
int type, // timeseries id
int count, // count
int start // starting index
);
[TBODY] [/TBODY]
Parameters
symbol
[in] Symbol name. NULL means the current symbol.
timeframe
[in] Timeframe. It can be any of ENUM_TIMEFRAMES enumeration values. 0 means the current chart timeframe.
type
[in] Series array identifier. It can be any of the Series array identifier enumeration values.
count=WHOLE_ARRAY
[in] Number of bars (in direction from the start bar to the back one) on which the search is carried out.
start=0
[in] Shift showing the bar, relative to the current bar, that the data should be taken from.
Returned value
The shift of the lowest value over a specific number of bars or -1 if error. To check errors, one has to call the GetLastError() function.
Example:
double val;
//--- calculating the lowest value on the 10 consequtive bars in the range
//--- from the 10th to the 19th index inclusive on the current chart
int val_index=iLowest(NULL,0,MODE_LOW,10,10);
if(val_index!=-1) val=Low[val_index];
else PrintFormat("Error in iLowest. Error code=%d",GetLastError());
[TBODY] [/TBODY]
 

Giới thiệu sách Trading hay
Thấu hiểu Hành vi giá Thị trường Tài chính - Understanding Price Action

Là quyển sách hướng dẫn giao dịch Phương Pháp Price Action của Bob Volman, chỉ sử dụng duy nhất một đường MA và cấu trúc thị trường cùng hành vi giá để tìm kiếm lợi nhuận
Chỉnh sửa lần cuối:

BÌNH LUẬN MỚI NHẤT

  • captainfx trong Chuyện bên lề 647 Xem / 1 Trả lời
  • DuongHuy trong Phân tích Forex - Vàng - Hàng hóa 155 Xem / 6 Trả lời
  • TraderLC trong Hội Trader giao dịch Quỹ 2,226 Xem / 32 Trả lời
  • Mạc An trong Phân tích Forex - Vàng - Hàng hóa 271 Xem / 12 Trả lời
  • AdBlock Detected

    We get it, advertisements are annoying!

    Sure, ad-blocking software does a great job at blocking ads, but it also blocks useful features of our website. For the best site experience please disable your AdBlocker.

    Back
    Bên trên