FAQ về NetTradex Advisors

Tôi muốn cài NetTradeX Advisors trên máy tính khác. Tôi có thể chuyển script của mình sang thế nào*?

Tất cả script NetTradeX Advisors được lưu trong mục Documents\NeTTradeX Advisors\scripts. Sau khi cài đặt trên máy tính khác, Bạn cần copy tất cả mục sang máy khác và khởi động lại phân mêm giao dịch.

Tôi thiết lập indicator, nhưng đường indicator bị cặt đoạn, tôi có thể làm gì để đường không bi cắt đoạn?

Để đường không bị cắt đoạn, Bạn cần dùng chức năng SetIndexStyle vơi thông số type có giá trị là ltSection.

Sau khi chạy expert thì phần mềm dừng lại trong vài giây và sau đấy trong lịch sự kiến hiện lến chữ "stopped by timeout". Tại sao lại xẩy ra trường hợp này?

Sau khi có báo giá, expert phải thực hiện tất cả quỳ trình trong vòng 60 giây. Nếu hạn chế này không được đáp ứng thì expert bắt buộc phải ngừng hoạt động và sẽ có 3 giây để thực hiện ngừng hoạt động. Bạn nên phân tích lại tình trạng flag System.IsStopped để cho expert hoạt động đúng quy trình. Khi expert ngừng hoạt động thì trên màn hình sẽ hiện lên ghi chúc "stopped by timeout". Trong trường hợp này, Bạn cần thiết lập lại mã để chương trình có thể thực hiện được trong thời gian hạn chế.

Tôi gửi yêu cầu mở vị trí bằng chức năng Deals.Open(), nhưng vị trí không được mở, tại sao vậy?

Sau khi bạn xác nhận là chức năng Deals.Open() trả lại thông số 0, thì Bạn cần xem lại trong mục System.LastError để tìm hiểu mã code sai. Mô tả về mã sai có thể xem trong phần hướng dẫn sử dụng trong phần “Nền tảng ngôn ngữ”-“Mã sai”. Hãy lưu ý là khi xem mục System.LastError phải xem ngay trong lần dùng đây, không thì các ghi chúc trong đấy sẽ bị xóa, còn các chức năng khác ghi lại.

Tôi mở vị trí và đặt lệnh và muốn xem chỉ tiết thông số, nhưng các chỉ tiết xem không đúng vợi hiện thực.

Để xem chi tiết thông số vị trí hoặc lệnh, Bạn cần dùng chức năng Select() và sau đấy, xác nhận lại rằng Select() đã trở lại giá trị true, tiếp theo là xem chi tiết thông số vị trí hoặc lệnh.

Làm cách nào có thể phân biệt loại lệnh chờ đợi (Buy stop hoặc Buy Limit)?

Để phân biệt loại lệnh đang đặt, cần phải xem thông số của lệnh bằng cash dùng chức năng Select(). Cho lệnh Buy Stop phải đáp ứng 2 điều kiện: Orders.Direction == opBuy và Orders.IsLimit == false, còn Buy Limit thì điệu kiện là Orders.Direction == opBuy và Orders.IsLimit == true.

SubType dùng để làm gì (dưới chủng loại)?

Tính năng dưới chủng loại cho lệnh dùng cho những lệnh “phức tạp” và cho phép nhận dạng lệnh nào là lệnh chính và lệnh phụ. Ví dụ cho lệnh tự kích hoạt, khi thực hiện sẽ tạo ra 2 lệnh OCO: lệnh kích hoạt (lệnh hạng 1), còn lệnh OCO là lệnh phụ (lệnh hạng 2).

Tôi cần mở vị trí cho ký hiệu nhật định. Tôi mở cửa sổ “Make deal”, nhưng trong đấy không có ký hiệu tôi cần.

Danh sách dụng cụ trong cửa sổ mở vị trí giống như trong cửa sổ Market Watch. Nên trước khi mở vị trí, Bạn hãy xác nhận lại mình đã thêm dụng cụ đấy vào danh sách Market Watch.

Tôi có thể biết thông tin về lợi nhuận của vị trí tôi đóng hôm qua hoặc mấy ngày trước như thế nào?

Thông tin về lịch các lệnh đọng, Bạn có thể xem trong mục History của sàn NetTradeX Advisors.Để xem thông tín đấy có thể dùng lệnh History. Thông tin về các lệnh đọng lưu đến khi khởi động lại phần mềm .

Tôi gọi chức năng Symbols.Distance(), nhưng lại nhận lại con số 0.

Trước khi gọi lệnh Symbols.Distance() hãy chọn dụng cụ cần thiết trươc ở trong Market Watch.

Những chức năng nào phải nhất định có trong script*? Nếu tôi không cần thực hiện chức năng initialize() và deinitialize(), tôi có thể xóa nó đi không?

Để chạy script, Bạn cần chức năng Run(). Chức năng Initialize() và DeInitialize() là tùy chọn, nên nếu bạn không cần đến nó thì có thể xóa đi.
Trong vài trường hợp, ví dụ tạo file với chức năng phụ thì trong mã script có thể không có chức năng Run(). Nhưng file như thế sẽ có thể ghép lại nhưng sẽ không chạy như một phần mềm riêng. Những script như thế dùng kèm với lệnh #include.
* Ngôn ngữ NTL+ bao gồm 3 loại phần mêm: expert, indicator, utility.

Lịch sử hoạt động của chương trình có được ghi vào đâu không?

Tất cả thông tìn về hoạt động của chương trình được ghi vào mục Journal, và vào log file, được lưu ở Documents\NeTTradeX Advisors\bases\loại tài khoản\số tài khoản\logs. Cho tài khoản được lưu lại file riêng .log. File này có thể mở bằng phần mềm text.

Tại sao lại dùng extern cho số liệu toàn cầu?

Số liệu toàn cầu có thể được đặt với extern hoặc không. Nếu có extern thì ngay sau chạy chương trình sẽ mở ra cửa sổ với các giá trị của số liệu trong đấy. Ngoài ra nhưng thông số đấy có thể thay đổi luôn khi advisor hoặc indicator đang chạy.

Có những nút ấn nhanh nào có thể sử dụng hữu ích?

Bạn hãy ấn Ctrl+N sẽ hiện lên cửa sổ với những dụng cụ có thể dùng để tạo biểu đồ.
Khi làm việc với biểu đồ có thể dùng phím + / - để thay đổi kích thước biểu đồ theo chiều dọc. Thao tác này có thể thực hiện nếu đưa chuốt vào dọc thời gian và giữ nút chuột trái và chuyển động chuột sang trái/phải. Để thay đổi kích thước theo chiều ngang thì hãy giữ nút chuột trái ở ô tỷ giá và chuyển động chuột lên/xuống.
Để xem tý giá cũ nhất thì hãy ấn nút Home, còn tỷ giá cuối thì ấn nút –End.
2 lấn ấn nút chuột trái vào ô tróng sẽ mở ra cửa sổ Open Positions để mở vị trí giao dich, 2 lân ấn chuột trái vào cửa sổ Order – sẽ mở ra cửa đặt lệnh. Những lệnh này có thể thực hiện bằng việc ấn nút F4(mở vị trí) và F3(đặt lệnh).
Trong cửa sổ mở vị trí hoặc đặt lệnh, giá trị của lệnh có thể thay đổi bằng cách quay bánh xe trên chuột. Ví dụ giá lệnh có thể quay bằng bánh xe và sẽ thây đổi giá trị cho 1 điểm.

Tôi thực hiện chia còn số nguyên bằng System.Print("2/3="+2/3); nhưng kết qua tôi nhận lại là 2/3=0. Tại sao lại xẩy ra trường hợp này?

Cả 2 số liệu đều là số nguyên nên khi chia thì kết quả cũng là con số nguyên. Như vậy một trong 2 sô liệu phải là loại double, ví dụ double(2)/3, và kết quả chúng ta sẽ có được la 2/3=0,6666667.

Những dữ liệu toàn cầu được lưu lại ở đâu?

Dữ liệu toàn cầu có thể xem trong cửa sổ “Global Variables”, mà có thể xem trong View – Global Variables. Hãy lưu ý thêm rằng cho mỗi tài khoản có dữ liệu toàn cầu riêng.

Làm cách nào có thể biết giá của fractal cuối?

Khi sử dụng phương pháp Indicators.Fractals thì không thể biết được giá trị của bar cuối bởi vì nó sẽ trả lại giá trị bằng 0. Giá trị thực được tạo từ bar thứ 4 (bar với index 3) , bởi vì trong trường hợp này sẽ được sử dụng 2 bar đã hình thành từ mỗi bên của bar cần thiết.

So sánh loại double như nào ?

Các con số trong máy tính được lưu trong hệ số 2, thế nên nhiều số trong hệ số 2 được lưu giữ như con số vô cực. Ví dụ số 0.1 thật ra được lưu nhu 0.099999998, nên thế để dấu == không thực sự là đúng cho các con số với (,). Nên sử dụng phương pháp toán học Math.Abs(a - b) < delta, 'a' là con số có, 'b' là con số được so với, và delta là chênh lệch tuyệt đối.