Thử thêm với code ở đây xem thế nào ?
http://codebase.mql4.com/5107
Lấy tĩnh chế động
thay đổi nội dung bởi: behattieu76, 09-11-2013 lúc 16:17
behattieu76 (11-11-2013)
Để nạp giá trị vào ID thì mình dùng hàm SetWindowTextA(hlogin,"123456"); Trong đó hlogin = GetDlgItem(...).
Để click nút thì mình dùng SendMessageA(hbutton,BM_CLICK,0,0);
Trong đó hbutton=GetDlgItem(....) và BM_CLICK = 0x00F5;
Chúc bạn thành công.
behattieu76 (13-11-2013)
Robotfx có thể gửi đoạn code mẫu về đặt lệnh được không. Như thế có lẽ anh em nghiên cứu nó dễ hơn. Mình thử gọi mấy cái kia mà chưa thấy nó động tĩnh gì cả. VÌ khi gán hlogin = GetDlgItem(...) thì không biết các thông số bên trong nó được khai báo như thế nào do Spy nó hiện ra một loại các thông số như: Handle, Instance handle, Control ID...
cái quan trọng thì các bác không bàn, tìm cách đặt lệnh ở mấy cái sàn chặn EA thì đâu có gì hay ho, quan trọng EA của bác có hiệu quả hay không thôi, còn lại hầu hết tới 99% các broker đều chạy EA được, lao vào cái 1% làm gì không biết
Tiện cho em hỏi: có cách cho EA nào gửi message vào email mà adress và server của email được define trong code không nhỉ?
Nhiều khi tìm hiểu không phải vì mục đích kiếm tiền, có những điều mình chưa biết mà cảm thấy hứng thú thì cố để biết, nó là niềm vui và đam mê. Cũng giống như chơi cờ tướng thôi, người ngoài thì bảo vô tích sự nhưng trong cuộc thì hào hứng vô cùng.
Mình đã từng đọc qua và thấy EA làm được, không những thế nó còn SMS được qua Skyper thì phải.
@behattieu76:
Tất nhiên việc gửi mail và bắn tin qua skype thì robot làm được, em làm rồi, nhưng quan trọng là địa chỉ email phải chỉnh trong option, thế mới đau. MT4 không support kiểu khai báo trong code. Có lẽ phải dùng API để viết code robot trên C# thôi, làm luôn giao diện cho đẹp hehe
Mình nghĩ bạn chưa tìm kiếm thôi.
Vừa lướt qua google thấy cái này bạn thử xem
to use it, just call this function and pass in the ticket number right after an OrderSend is executed.Code:void SendTradeEmail(int ticket) { if(ticket>0) { if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) { string MsgSubject = OrderSymbol() + " "; string MsgBody = "Pair Traded: "+OrderSymbol(); MsgBody = MsgBody + "nBuy Or Sell: "; if (OrderType() == OP_BUY) { MsgSubject = MsgSubject + "BUY "; MsgBody = MsgBody + "BUY"; } if (OrderType() == OP_SELL) { MsgSubject = MsgSubject + "SELL "; MsgBody = MsgBody + "SELL"; } MsgBody = MsgBody + "nTime: "+TimeToStr(OrderOpenTime(),TIME_DATE|TIME_MINUTES|TIME_SECONDS); MsgSubject = MsgSubject + DoubleToStr(OrderOpenPrice(),Digits); MsgBody = MsgBody + "nOpen Price: "+DoubleToStr(OrderOpenPrice(),Digits); MsgBody = MsgBody + "nLot Size: "+DoubleToStr(OrderLots(),3); SendMail(MsgSubject,MsgBody); } } }
Code:int TK=OrderSend(Symbol(),OP_BUY,Lots,Ask,Slip,SLI,TPI,OrSt,Magic,0,Lime); SendTradeEmail(TK);
===
Thực ra cũng sẽ có nhiều giải pháp khác để gửi mail đúng không? Mql4 có thể kích hoạt một file exe nên lúc nào cần mail thì cho kích hoạt file exe do bạn viết bằng ngôn ngữ khác là đươc rồi (VB, php đều làm được)
thay đổi nội dung bởi: behattieu76, 13-11-2013 lúc 23:22
@behattieu76:
bác chưa hiểu vấn đề rồi, vấn đề là ko thể tùy biến địa chỉ mail trong code, hy vọng các cao thủ robot như bác Robotfx giúp đỡ em vụ này em xin cảm tạ
Facebook: https://www.facebook.com/daigv
Bác nào còn link Down em này không? Tìm mãi không thấy. Thấy hay quá.
Actions : (View-Readers)