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”
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ạ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.
Chọn “Next” để tiếp tục.
Chọn “Finish” để hoàn tất việc tạo File soạn thảo BotTrade.
Lúc này chúng ta sẽ được một mẫu code chung trong trình 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 |
|
|
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);
}
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 đồ.
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.
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.
» 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.COM và Nguyễ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!