Cách Tạo BotTrade, EA Forex Trên MT4, MT5 Cho Người Mới Bắt Đầu

Cách Tạo BotTrade, EA Forex Trên MT4, MT5 Cho Người Mới Bắt Đầu
Chia sẻ

Tiếp nối sự quan tâm của nhiều anh chị và các bạn dành cho chủ đề tự tạo BotTrade, EA Forex nhằm mang lại nhiều lợi ích như: giao dịch ngay cả khi bạn đang ngủ, không bị ảnh hưởng bởi yếu tố cảm xúc và có khả năng backtest.

Cách tự tạo 1 con Bot theo phong cách giao dịch của riêng mình là một chủ đề hấp dẫn với nhiều nhà đầu tư kể cả người có kinh nghiệm hoặc người mới. Bài viết dưới đây sẽ là hướng dẫn chi tiết cách tạo của BotTrade Forex, cụ thể là trên nền tảng MT4.

1. BotTrade Forex – Expert Advisor (EA)

BotTrade hoặc Robot Forex, hay còn gọi là Expert Advisor (EA), là phần mềm giao dịch tự động được sử dụng trong thị trường ngoại hối. Toàn bộ chiến lược và quy tắc giao dịch đã được cấu hình sẵn trong chương trình máy tính, cho phép Robot thực hiện giao dịch mà không cần sự can thiệp của con người.

Hiện nay, Robot Forex có các chức năng nổi bật như sau:

  • Thực hiện giao dịch tự động: BotTrade Forex có khả năng tự động mở và đóng các vị trí giao dịch dựa trên quy tắc và chiến lược đã được cài đặt. Điều này giúp bạn thực hiện giao dịch một cách nhanh chóng và chính xác, mà không cần can thiệp thủ công. EA Forex hoạt động liên tục, ngay cả khi bạn không trực tiếp theo dõi thị trường. Điều này cho phép bạn tham gia vào các cơ hội giao dịch 24 giờ mỗi ngày, 7 ngày mỗi tuần, mà không cần phải thức đêm.
  • Giao dịch liên tục 24/7: Robot Forex có khả năng thực hiện giao dịch mà không cần nghỉ ngơi, ngày lẫn đêm. Điều này cho phép bạn tham gia vào các cơ hội thị trường xảy ra 24 giờ mỗi ngày, 7 ngày mỗi tuần, mà không cần phải theo dõi thị trường liên tục.
  • Quản lý lệnh: BotTrade có thể theo dõi và quản lý nhiều lệnh mở cùng một lúc. Chúng có khả năng đặt lời dừng lỗ (stop-loss) và lời chốt lời (take-profit) để bảo vệ lợi nhuận và giảm rủi ro.
  • Thoát giao dịch: Khi điều kiện giao dịch không còn phù hợp với chiến lược, BotTrade có khả năng tự động thoát khỏi giao dịch. Điều này giúp bạn tránh những lỗ lãi không cần thiết và bảo vệ vốn đầu tư.
  • Tạo tín hiệu thông báo: BotTrade có thể tạo ra tín hiệu giao dịch dựa trên các điều kiện thị trường. Các tín hiệu này có thể được gửi đến các Trader thông qua email, tin nhắn văn bản, hoặc thông qua các ứng dụng di động để cảnh báo về cơ hội giao dịch.
  • Sao Chép giao dịch giữa các sàn: Một số EA cho phép bạn sao chép các giao dịch từ một sàn giao dịch sang một sàn khác. Điều này giúp bạn tận dụng cơ hội giao dịch trên nhiều sàn và đối tượng tài chính khác nhau.
  • Loại bỏ yếu tố cảm xúc trong các giao dịch: Một trong những khía cạnh khó khăn nhất của giao dịch là kiểm soát cảm xúc. BotTrade Forex không bị ảnh hưởng bởi sự tức giận, sợ hãi hoặc tham lam, điều này giúp loại bỏ yếu tố cảm xúc trong các quyết định giao dịch và duy trì sự khách quan.
  • Giảm tối đa lỗi giao dịch: BotTrade Forex thực hiện các quy tắc giao dịch một cách chính xác và không có sự sai sót do con người. Điều này giúp giảm tối đa các lỗi giao dịch do nhầm lẫn hoặc thiếu sót thông tin, giúp bảo vệ vốn đầu tư.

Ngoài việc sử dụng các EA có sẵn, Trader cũng có thể tự lập trình BotTrade Forex. Ngay cả khi bạn không phải là một chuyên gia về MetaQuotes Language (MQL), bạn vẫn có thể sử dụng các công cụ trình tạo EA để tạo Robot mà không cần phải viết mã lập trình thủ công.

2. Hướng Dẫn Lập Trình BotTrade Forex – Expert Advisor (EA) trên MT4

Các bước hướng dẫn lập trình Robot Forex được thực hiện đơn giản, như sau:

Bước 1: Mở trình soạn thảo MetaEditor của MT4

Mở trình soạn thảo MetaEditor trên MT4 theo đường dẫn: Tool > MetaQuotes Language Editor hoặc nhấn phím “F4”

Mở trình soạn thảo MetaEditor trên MT4
Mở trình soạn thảo MetaEditor trên MT4

Trên cửa sổ trình soạn thảo MetaEditor sẽ hiện ra. Bạn Click vào mục “New” phái trên góc bên trái.

Tạo File trình soạn thảo mới (New)
Tạo File trình soạn thảo mới (New)

Tại đây có các lựa chọn tương ứng các mục đích lập trình của bạn. Bạn chọn vào “Expert Advisor”. Chọn “Next” để tiếp tục.

Tiếp theo bạn đặt tên cho EA mà mình xây dựng. Ví dụ tên mình đặt là Vi Du EMA 20 50. Lưu ý các tham số phần Parameters sẽ thêm vào khi lập trình, bạn không cần quan tâm ở đây. Chọn “Next” để tiếp tục.

Đặt tên cho EA mà mình xây dựng
Đặt tên cho EA mà mình xây dựng

Chọn “Next” để tiếp tục.

Chọn Next để tiếp tục
Chọn Next để tiếp tục

Chọn “Finish” để hoàn tất việc tạo File soạn thảo BotTrade.

Nhấn Finish để tạo File trình soạn thảo
Nhấn Finish để tạo File trình soạn thảo

Lúc này chúng ta sẽ được một mẫu code chung trong trình soạn thảo EA.

Giao diện soạn thảo EA
Giao diện soạn thảo EA

Bước 2: Tạo BotTrade theo phương pháp giao dịch EMA 20-50

Bây giờ công việc của chúng ta là tiến hành code các dòng lệnh với các thuật toán cho EA của mình vào trong mẫu code chung thu được ở trên.

Ý tưởng giao dịch

  • Lệnh thực hiện dựa vào sự cắt nhau của EMA_20 và EMA_50.
  • Kết hợp điều kiện yêu cầu của nến mà ở đó xảy ra sự giao cắt.
LỆNH MUA LỆNH BÁN
  • EMA_20 cắt từ dưới lên EMA_50.
  • Giá đóng cửa của nến xảy ra sự cắt nhau cao hơn giá mở cửa, và nằm phía trên 2/3 kích thước của nến.
  • Thân nến có kích thước tương đối.
  • EMA_20 cắt từ trên xuống EMA_20.
  • Giá đóng cửa của nến xảy ra sự cắt nhau thấp hơn giá mở cửa, và nằm phía dưới 1/3 kích thước của nến.
  • Thân nến có kích thước tương đối.

Trong code mẫu tự động tạo ra bởi trình soạn thảo chúng ta có các thành phần:

  • Hàm khởi tạo Expert OnInt().
  • Hàm kết thúc Expert Ondeint().
  • Hàm void OnTick().

Ta thay hàm void OnTick() bằng hàm int start().

//— đầu tiên ta tiến hành khai báo các biến—

int ticket; // giá trị phục vụ kiểm tra khi tiến hành đặt lệnh

double ma20_1, ma20_2; // giá trị đường trung bình MA

double ma50_1, ma50_2;

double BarHigh3, BarLow3, BarSize3, BarClose3, BarOpen3; // giá trị nến mới đóng cửa

double atr; // giá trị sử dụng tính toán SL va TP

bool buy_condition = false, sell_condition = false; // điều kiện đặt lệnh

bool n01 = false, n11 = false, n21 = false; // điều kiện đặt 01 lệnh trên 01 nến

bool n02 = false, n12 = false, n22 = false; //

double Lots = 0.01; // khối lượng của lệnh

//—khởi tạo giá trị cho các biến

ma20_1 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_MEDIAN, 1);

ma20_2 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_MEDIAN, 2);

ma50_1 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_MEDIAN, 1);

ma50_2 = iMA(NULL, 0, 50, 0, MODE_SMA, PRICE_MEDIAN, 2);

BarHigh3 = iHigh (Symbol(), 0, 1);

BarLow3 = iLow (Symbol(), 0, 1);

BarClose3 = iClose ( Symbol(), 0, 1);

BarOpen3 = iOpen( Symbol(),0,1);

BarSize3 = BarHigh3 – BarLow3;

atr = iATR (Symbol(), 0, 40, 1);

//——-xác định điều kiện cho đặt lệnh———

//——-thuat toan dieu kien cho lenh buy——

if( ma20_2 < ma50_2 && ma20_1 > ma50_1 )

{

if ( BarClose3 > BarLow3 + 0.7*BarSize3 )

{

if ( BarSize3 > 0.6*atr )

{

buy_condition = true;

}

}

}

//——- thuat toan dieu kien lenh sell——

if( ma20_2 > ma50_2 && ma20_1 < ma50_1 )

{

if ( BarClose3 < BarLow3 + 0.3*BarSize3 )

{

if ( BarSize3 > 0.6*atr )

{

sell_condition = true;

}

}

}

//——- điều kiện đặt 01 lệnh trên 01 nến cho mỗi cặp——

int total = OrdersTotal();

for ( int pos = 0; pos <= total; pos++ )

{

if ( OrderSelect( pos, SELECT_BY_POS ) == true )

{

//———————-lenh thuc hien khac ngay———————————–

if ( OrderSymbol() == “AUDUSD” && (TimeDay(TimeCurrent()) != TimeDay (OrderOpenTime())) )

{

if ( OrderType() == OP_BUY )

n01 = true;

if ( OrderType() == OP_SELL )

n11 = true;

}

if ( OrderSymbol() == “EURUSD” && (TimeDay(TimeCurrent()) != TimeDay (OrderOpenTime())) )

{

if ( OrderType() == OP_BUY )

n02 = true;

if ( OrderType() == OP_SELL )

n12 = true;

}

//——————–lenh thuc hien cung ngay——————————————

if ( OrderSymbol() == “AUDUSD” && (TimeDay(TimeCurrent()) == TimeDay (OrderOpenTime())) )

{

n21 = true;

}

if ( OrderSymbol() == “EURUSD” && (TimeDay(TimeCurrent()) == TimeDay (OrderOpenTime())) )

{

n22 = true;

}

}

}

//——- đặt lệnh buy và sell————————————————-

if ( ( buy_condition == true && Symbol() == “AUDUSD” && n11 == false && n21 == false) ||

( buy_condition == true && Symbol() == “EURUSD” && n12 == false && n22 == false) )

{

if ( BarClose3 – BarLow3 < atr*1.5 )

{

ticket = OrderSend(Symbol(),OP_BUY,Lots,Ask, 3, BarLow3 – 50*Point, Ask + (Ask – BarLow3 + 50*Point)*2.1,”My EA”,1245,0,Green); // buy order place

}

else

{

ticket = OrderSend(Symbol(),OP_BUY,Lots,Ask, 3, Ask – atr*1.5, Ask + atr*1.5*2.1,”My EA”,1245,0,Green); // buy order pl

}

if(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))

{

Print(“BUY order opened : “,OrderOpenPrice());

return (0);

}

}

else

{

Print(“Error opening BUY order : “,GetLastError());

return(0);

}

}

return(0);
}

Kiểm tra lỗi BotTrade bằng lệnh Compile
Kiểm tra lỗi BotTrade bằng lệnh Compile

Sau khi nhấn F11 hoặc lệnh Compile, nếu Description không báo lỗi cho thấy cú pháp lệnh đã đúng.

3. Cài Đặt Expert Advisor Trên Biểu Đồ

Bạn cần đặt lại bảng điều khiển “Navigator”. Hoặc khởi động lại nền tảng giao dịch để truy cập EA và tiến hành cài lên biểu đồ.

Mở thư mục Open Data Folder trên MT4
Mở thư mục Open Data Folder trên MT4

Tiếp theo, bạn tìm EA trong bảng điều khiển “Navigator” ở bên trái giao diện sử dụng. Để xem các EA, hãy nhấp vào nút dấu “+”. Sau đó dùng chuột kéo và thả EA vào biểu đồ MT4 mong muốn để cài đặt ở đó.

Điều chỉnh cài đặt

Điều chỉnh cài đặt cho EA trong Options, bao gồm kích hoạt tính năng tự động giao dịch.. Vào mục “Tools” ở thanh Menu và chọn “Options”. Lúc này, cửa sổ pop-up sẽ xuất hiện, chọn “Expert advisors” và đánh dấu vào các ô điều kiện như mong muốn.

Để kích hoạt tính năng tự động cho giao dịch trực tiếp, hãy nhấp vào “Autotrading” trên nền tảng (màn hình lúc này sẽ hiển thị một màu xanh lá cây). Một cửa sổ pop-up mới sẽ xuất hiện, đánh dấu chọn vào ô “Allow live trading” và “Allow DLL imports”. Sau cùng bấm nút chọn “OK” để kết thúc cài đặt.

Thêm EA Trade Panel vào biểu đồ giao dịch
Thêm EA Trade Panel vào biểu đồ giao dịch

Bắt đầu giao dịch

Khi cài đặt thành công, góc trên cùng bên phải của nền tảng MT4 sẽ xuất hiện biểu tượng mặt cười. Điều này đồng nghĩa với việc robot đã sẵn sàng để giao dịch. Tuy nhiên, các Trader vẫn nên kiểm tra BotTrade Forex trên tài khoản demo để nâng cao hiệu suất trước khi khởi chạy chính thức bằng cách thực hiện các sửa đổi kịp thời.

Kiểm tra chiến lược EA Trade Panel
Kiểm tra chiến lược EA Trade Panel

» Bot EA Trade Panel Đặt Stoploss, Takeprofit Tự Động trên MT4 và MT5

Chúng ta đã vừa lập trình hoàn thành EA theo phương pháp giao dịch đơn giản là dựa vào sự cắt nhau của các đường trung bình giá kết hợp điều kiện giá đóng cửa của nến.

Các bạn chú ý, trong phần đặt lệnh “SendOrder” ta chia ra hai trường hợp dựa vào kích thước của nến so sánh với giá trị ATR. Tỉ lệ Reward/Risk là 2:1. BotTrade giao dịch trên 2 cặp ngoại tệ là AUD/USD, EUR/USD.

Bây giờ công việc của ta sẽ là biên dịch để có được một EA giao dịch tự động.

» Khóa học phương pháp giao dịch nến Heiken Ashi (Video)

Ngoài ra các bạn có thể theo dõi những thông tin và chia sẻ mới nhất từ trang TRADERPTKT.COMNguyễn Hữu Đức Trader. Chúng tôi có các khóa học từ cơ bản đến nâng cao sẽ giúp bạn trang bị kiến thức đầu tư tài chính trên các thị trường chứng khoán, ngoại hối và tiền điện tử.

Chúc may mắn và thành công!

Bảng xếp hạng sàn giao dịch
Đánh giá

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai.

X
Maps Maps Messenger Messenger Zalo Zalo Zalo Phone