Sở hữu ngay máy chủ VPS Robot Forex khi giao dịch tại HotForex

MQL5 Storage là lưu trữ trực tuyến cá nhân của mã nguồn MQL4/MQL5 hoàn toàn miễn phí và không giới hạn dung lượng lưu trữ. Dịch vụ đảm bảo quyền truy cập an toàn vào các tệp của bạn từ bất kỳ đâu trên thế giới và cung cấp cơ hội để phát triển các dự án lớn phối hợp với các thành viên MQL5.community khác. Nó được tích hợp vào MetaEditor: bạn có thể lưu và nhận dữ liệu từ bộ lưu trữ trực tiếp trong trình chỉnh sửa.

Tích hợp trực tiếp với MetaEditor

Bộ lưu trữ mã được tích hợp vào MetaEditor , vì vậy bạn có thể lưu và nhận dữ liệu từ bộ lưu trữ trực tiếp trong trình chỉnh sửa mà không cần sử dụng bất kỳ phần mềm bổ sung nào.

Mã truy cập từ mọi nơi trên thế giới

Với Bộ lưu trữ MQL5, bạn có thể truy cập các tệp mã của mình từ bất kỳ máy tính nào. Chỉ định tài khoản MQL5 của bạn trong cài đặt MetaEditor và tải xuống các tệp có sẵn từ bộ lưu trữ.

Dự án chia sẻ

MQL5 Storage hỗ trợ các dự án lập trình chia sẻ trực tuyến . Bạn có thể tạo một dự án được chia sẻ trong MetaEditor, thêm người tham gia và phân phối quyền thích hợp. Chỉ cần một tài khoản MQL5 để tham gia dự án. Bạn có thể đặt bất kỳ dự án nào của mình thành công khai và tìm kiếm sự trợ giúp từ các thành viên MQL5.community

Lưu trữ mã phiên bản

Bộ lưu trữ MQL5 có hệ thống kiểm soát phiên bản, được triển khai trên cơ sở Subversion . Bạn có thể xem chi tiết của tất cả các bản cập nhật, chẳng hạn như ngày sửa đổi và tác giả, cũng như hủy các thay đổi nếu cần thiết hoặc trở lại phiên bản trước chỉ trong vài cú nhấp chuột.

Bảo mật dữ liệu

An toàn & bảo mật vốn đầu tư tại HotForex

MQL5 Storage đảm bảo an toàn cho các tệp mã nguồn của bạn. Chỉ bạn mới có thể truy cập dữ liệu được lưu trữ trên máy chủ được bảo vệ. Ngoài ra, bản sao cục bộ của bạn có thể được khôi phục nhanh chóng từ bộ lưu trữ trong trường hợp hỏng đĩa cứng máy tính.

Di chuyển dữ liệu giữa các nền tảng

Ngoài mã nguồn, Bộ lưu trữ MQL5 có thể lưu trữ các tệp hữu ích khác, chẳng hạn như mẫu và biểu đồ biểu đồ, bộ ký hiệu giao dịch và tham số thử nghiệm cho các chương trình MQL5. Tải tệp lên Bộ lưu trữ MQL5 và truy cập chúng từ bất kỳ máy tính nào bằng tài khoản MQL5 của bạn.

Bộ lưu trữ có hệ thống kiểm soát phiên bản. Điều này có nghĩa là bạn luôn có thể tìm ra thời điểm và cách các tệp được thay đổi, cũng như hủy bỏ mọi thay đổi và quay lại phiên bản trước.

Với MQL5 Storage, mã nguồn của bạn luôn được bảo mật. Dữ liệu được lưu trữ trên một máy chủ được bảo vệ và bạn là người duy nhất có quyền truy cập vào nó. Nếu ổ cứng của bạn bị lỗi, tất cả các mã đã lưu trước đó có thể được khôi phục dễ dàng.

Việc lưu trữ cho phép bạn dễ dàng chia sẻ và đồng bộ hóa các mẫu và hồ sơ biểu đồ, bộ thông số để kiểm tra các chương trình MQL5 và bộ công cụ giao dịch giữa các nền tảng khác nhau.

MQL5 Storage cho phép phát triển các ứng dụng MQL5 từ xa trong các nhóm sử dụng các dự án được chia sẻ.

Kích hoạt Storage

Để bắt đầu làm việc với Bộ lưu trữ MQL5, bạn nên kích hoạt nó trong MetaEditor bằng tài khoản MQL5.community của bạn.

Mở menu ngữ cảnh của cửa sổ Navigator và thực hiện lệnh Kích hoạt MQL5 Storage. Nếu bạn đã chỉ định mật khẩu và đăng nhập MQL5.community của mình trong cài đặt MetaEditor trước đó, bộ nhớ sẽ được kích hoạt ngay lập tức. Nếu không, bạn sẽ cần chỉ định chi tiết tài khoản.

Nếu bạn chưa bao giờ sử dụng bộ lưu trữ trước đó, nó sẽ được tạo cho tài khoản MQL5 của bạn tại thời điểm kích hoạt. Nếu trước đây bạn đã làm việc với bộ lưu trữ và nó lưu trữ một số dữ liệu, MetaEditor sẽ trích xuất tất cả dữ liệu từ bộ lưu trữ vào máy tính của bạn (sang bản sao hiện tại của MetaEditor) ngay khi kích hoạt.

Nếu bạn không có tài khoản MQL5.community, vui lòng đăng ký và có quyền truy cập vào các cơ hội duy nhất. Bạn cũng sẽ nhận được tiền thưởng $ 2 mà bạn có thể sử dụng để kiểm tra các chương trình thông qua Mạng lưới đám mây MQL5.

Nội dung của kho lưu trữ có thể được xem trong trình duyệt bằng liên kết sau: stStorage.mql5.io. Trình duyệt sẽ yêu cầu bạn nhập mật khẩu và đăng nhập tài khoản MQL5.community của bạn.

Tại đây bạn có thể xem và tải xuống các tệp được lưu trữ trong Bộ lưu trữ. Cấp cao nhất có các dự án được chia sẻ của bạn và thư mục MQL5. [Đăng nhập], trong đó dữ liệu từ thư mục làm việc MQL5 của MetaEditor được lưu.

Tạo và làm việc với một project

MetaEditor cung cấp chức năng thuận tiện để làm việc với các dự án lớn, cho phép người dùng kết hợp các tệp thành một cấu trúc duy nhất, quản lý cài đặt dự án và phát triển ứng dụng theo nhóm thông qua kho lưu trữ MQL5 trực tuyến với kiểm soát phiên bản.

Một dự án là gì?

Dự án là một tệp riêng biệt với phần mở rộng MQPROJ, nơi lưu trữ các cài đặt chương trình, tham số biên dịch và thông tin về tất cả các tệp được sử dụng trong dự án. Một tab riêng trong Navigator được cung cấp để thuận tiện cho công việc trong dự án. Tất cả các tệp, chẳng hạn như bao gồm, tài nguyên, tiêu đề và các tệp khác được sắp xếp thành các danh mục trên tab này.

Tạo project

Tạo một dự án mới cũng dễ như tạo ra một chương trình MQL5 bình thường. Nhấp vào Dự án mới và chọn loại chương trình mong muốn trong Trình hướng dẫn MQL5:

Sau đó hoàn thành các bước Thuật sĩ MQL5 tiêu chuẩn: đặt loại, tên và thuộc tính của chương trình mong muốn, cũng như chọn các trình xử lý sự kiện thích hợp.

Tạo một dự án dựa trên tệp MQ5

Nếu bạn đã có các phát triển ở dạng tệp MQ5, bạn có thể dễ dàng chuyển đổi chúng thành dự án. Chọn một tệp và nhấp vào Dự án mới từ Nguồn trong menu ngữ cảnh tệp:

Trong thư mục chứa tệp đã chọn, tệp dự án mới có cùng tên và phần mở rộng mqproj sẽ được tạo. Các thuộc tính chương trình chính được chỉ định trong mã nguồn thông qua #property sẽ được tự động thêm vào dự án, bao gồm tên, bản quyền, phiên bản, liên kết đến trang web của nhà phát triển và mô tả chương trình. Tất cả các tệp được bao gồm trong mã nguồn thông qua lệnh #incoide sẽ được thêm vào phần Phụ thuộc của dự án.

Project properties

Các cài đặt dự án chính có thể được truy cập từ một hộp thoại riêng thay vì chỉnh sửa mã nguồn như thường được thực hiện trong các tệp MQ5 riêng biệt. Để mở cài đặt dự án, nhấp vào Thuộc tính trong menu ngữ cảnh dự án. Các cài đặt dự án sau đây có sẵn:

  • Nền tảng có nghĩa là phiên bản nền tảng mà dự án được phát triển, ví dụ: MetaTrader 4 hoặc MetaTrader 5.
  • Loại chương trình: Expert Advisor, Indicator, Script hoặc Library.
  • Bản quyền hiển thị thông tin bản quyền tương tự như ‘#property copyright …’ trong mã nguồn.
  • Liên kết hiển thị liên kết đến trang web của nhà phát triển tương tự như ‘#property link …’ trong mã nguồn.
  • Phiên bản: chỉ định phiên bản của chương trình tương tự như ‘#property version …’ trong mã nguồn.
  • Biểu tượng: biểu tượng của chương trình tương tự như ‘#property icon …’ trong mã nguồn.
  • Mô tả: mô tả chương trình tương tự như ‘#property description …’ trong mã nguồn.
  • Cho phép tối ưu hóa bổ sung: các ứng dụng với tối ưu hóa bị vô hiệu hóa được biên dịch nhanh hơn, nhưng thực thi chậm hơn.
  • Kiểm tra các dấu phân cách dấu phẩy động: các ứng dụng với kiểm tra bị vô hiệu hóa hoạt động nhanh hơn một chút, vì lỗi phân chia 0 không được kiểm tra trong quá trình thực thi mã.
  • Sử dụng bộ đệm tối ưu hóa – trong quá trình tối ưu hóa, trình kiểm tra chiến lược lưu kết quả của tất cả các lần thực hiện trong bộ đệm. Kết quả được lưu cho mỗi bộ đầu vào. Điều này cho phép sử dụng các kết quả sẵn sàng trong quá trình tối ưu hóa lại với cùng các tham số, mà không mất thời gian cho việc tính toán lại.
  • Nhưng trong một số nhiệm vụ (ví dụ, trong các phép tính toán học), có thể cần phải thực hiện các phép tính bất kể kết quả trước đó có sẵn. Trong trường hợp này, bạn nên vô hiệu hóa ‘Sử dụng tùy chọn bộ đệm tối ưu hóa’ trong dự án. Tất cả các kết quả kiểm tra sẽ vẫn được lưu trong bộ đệm và do đó bạn có thể xem dữ liệu về các lượt thực hiện trong báo cáo thử nghiệm chiến lược.
  • Tính toán chỉ báo trên mỗi dấu kiểm trong trình kiểm tra – tùy chọn này chỉ khả dụng cho các dự án chỉ báo. Nó buộc phải cho phép tính toán chỉ báo ở mỗi tích tắc khi chạy trong trình kiểm tra chiến lược. Tùy chọn chỉ áp dụng cho hoạt động trong Bộ kiểm tra chiến lược. Trong nền tảng, các chỉ số luôn được tính toán tại mỗi lần đánh dấu đến.
  • Khi bạn kiểm tra Cố vấn chuyên gia bằng cách sử dụng các chỉ báo, Bộ kiểm tra chiến lược chỉ tính toán các giá trị chỉ báo khi dữ liệu của họ được truy cập, tức là khi các giá trị bộ đệm chỉ báo được yêu cầu. Điều này cung cấp khả năng tăng tốc đáng kể trong quá trình thử nghiệm và tối ưu hóa, nếu Expert Advisor không cần các giá trị chỉ báo ở mỗi tích tắc. Kích hoạt tùy chọn này, nếu chỉ số cần được tính toán ở mỗi đánh dấu.
  • Ngoài ra, các chỉ số trong Trình kiểm tra chiến lược được tính tại mỗi lần đánh dấu trong các trường hợp sau:
  • Khi kiểm tra ở chế độ trực quan
  • Nếu chỉ báo chứa các hàm EventChartCustom, OnChartEvent, OnTimer
  • Nếu chỉ báo được tạo bằng trình biên dịch xây dựng bên dưới 1916

Tập các thuộc tính chương trình trong tệp dự án được ưu tiên cao hơn các thuộc tính được chỉ định trong mã chương trình. Nếu các thuộc tính được chỉ định cả trong dự án và trong tệp nguồn, các thuộc tính từ dự án sẽ được sử dụng.

Thêm và xóa các tập tin từ dự án

Tất cả các tệp được sử dụng trong mã nguồn được tự động thêm vào trình điều hướng dự án. Ví dụ: nếu bạn bao gồm tệp MQH mới bằng cách sử dụng lệnh #incoide, nó sẽ tự động xuất hiện trong phần Phụ thuộc của trình điều hướng. Các tệp tiêu đề đã sử dụng được thêm vào phần Tiêu đề; Hình ảnh, âm thanh và các chương trình MQL khác được sử dụng trong dự án dưới dạng tài nguyên (thông qua chỉ thị #resource) được thêm vào phần Tài nguyên.

Các tệp MQ5 với mã nguồn được hiển thị trong phần Nguồn. Các tệp khác, chẳng hạn như đặt tệp để kiểm tra và mẫu biểu đồ, có thể được thêm vào phần ‘Cài đặt và tệp’.

Sử dụng các lệnh menu ngữ cảnh để thêm các tệp hiện có vào một dự án hoặc để xóa các tệp khỏi nó. Hãy cẩn thận khi xóa các tệp, vì bạn có thể xóa một tệp khỏi dự án (xóa ràng buộc) hoặc xóa hoàn toàn khỏi đĩa cứng:

Một tệp được thêm vào dự án theo cách thủ công không được bao gồm trong mã chương trình và không được sao chép vào thư mục dự án. Các tập tin chỉ được liên kết với dự án sẽ được hiển thị trong bộ điều hướng của nó.

Biên dịch dự án

Để biên dịch tệp EX5 thực thi, hãy mở dự án hoặc tệp MQ5 chính của chương trình, rồi chạy lệnh biên dịch (F7). Tệp thực thi kết quả sẽ được tạo trong cùng thư mục, nơi đặt tệp dự án MQPROJ.

Chia sẻ một Project

MetaEditor cho phép các lập trình viên phát triển các ứng dụng MQL5 từ xa theo nhóm. Kho lưu trữ trực tuyến MQL5 Storage được tích hợp vào trình chỉnh sửa:

  • Hỗ trợ phiên bản cho phép bạn xem tất cả các thay đổi được thực hiện cho dự án và hoàn nguyên chúng nếu cần thiết.
  • Truy cập trực tuyến vào dự án đảm bảo quyền truy cập cho tất cả các thành viên dự án từ bất kỳ máy tính nào, sử dụng tài khoản MQL5.community.
  • Bạn có thể cấp quyền riêng cho những người tham gia dự án cho phép xem hoặc chỉnh sửa dự án.
  • Bạn cũng có thể tạo các dự án công cộng, hiển thị cho tất cả người dùng. Các dự án công cộng được hiển thị trong một tab riêng trong MetaEditor, từ đó bất kỳ ai cũng có thể đăng ký tham gia.

Các dự án được chia sẻ được quản lý từ một phần Dự án chia sẻ riêng biệt. Nếu bạn chưa kích hoạt Storage, hãy thực thi lệnh Kích hoạt MQL5 Storage từ menu ngữ cảnh của thư mục mong muốn. MetaEditor sẽ kiểm tra xem bộ nhớ của bạn có chứa bất kỳ dữ liệu đã lưu nào không và liệu có bất kỳ dự án chia sẻ nào có sẵn cho bạn không. Tất cả dữ liệu có sẵn sẽ được truy xuất từ ​​Bộ nhớ và tải lên máy tính của bạn. Các dự án nhóm có sẵn xuất hiện trong phần Dự án chia sẻ. Để lấy lại các dự án, hãy thực hiện Checkout từ Storage trong menu ngữ cảnh.

Để tạo dự án nhóm mới, chọn thư mục Dự án được chia sẻ và nhấp vào Dự án mới:

Sau đó hoàn thành các bước MQL5 tiêu chuẩn: đặt loại, tên và thuộc tính của chương trình mong muốn. Đối với các dự án nhóm, bạn nên sử dụng tên rõ ràng và dễ hiểu, để những người tham gia khác có thể dễ dàng tìm thấy chúng. Chỉ các chữ cái và số Latin không có dấu cách có thể được sử dụng trong tên dự án.

Một dự án đã tạo ngay lập tức được thêm vào Bộ lưu trữ MQL5. Các tệp Thư viện chuẩn được sử dụng trong dự án không được thêm vào bộ lưu trữ và bạn có thể thêm chúng theo cách thủ công.

Để cho phép những người tham gia khác làm việc với dự án, hãy mở các thuộc tính của dự án. Bạn có thể cấp quyền cho người dùng đã chọn và đặt tham số chung cho nhóm làm việc:

  • Một dự án tư nhân chỉ có sẵn cho tác giả
  • Dự án miễn phí cho phép mọi người tham gia
  • Một dự án tham gia theo yêu cầu có thể được truy cập sau khi gửi yêu cầu cho tác giả

Để cấp quyền cho người dùng đã chọn, nhấp vào ‘thêm người dùng mới’ và chỉ định đăng nhập MQL5.community của người dùng này. Sau đó chọn quyền:

  • Read: người dùng có thể xem dữ liệu dự án và sẽ có thể tải xuống MetaEditor của mình.
  • Read and Write: người dùng có thể xem dữ liệu dự án, cũng như tải lên các thay đổi của chính mình vào Storage, nhưng không thể thay đổi danh sách người tham gia.

Khi bạn biên dịch dự án nhóm, tệp EX5 thực thi sẽ tự động được sao chép vào thư mục Chuyên gia, Chỉ báo hoặc Tập lệnh cục bộ tùy thuộc vào loại chương trình. Nó cho phép bạn ngay lập tức chạy chương trình trong nền tảng mà không cần phải sao chép thủ công vào thư mục thích hợp.

Public projects

Mỗi dự án được chia sẻ trong MQL5 Storage có cài đặt công khai: dự án có thể ở chế độ riêng tư hoặc mở cho người dùng khác. Tất cả các dự án mà bạn có thể tham gia được hiển thị trong tab Dự án công cộng riêng biệt.

Nhấp vào Tham gia để tham gia một dự án. Sau đó, dự án sẽ xuất hiện trong phần Dự án chia sẻ. Sau đó nhấp vào Cập nhật từ Bộ nhớ trong menu ngữ cảnh của dự án để tải xuống máy tính của bạn.

Mỗi người dùng tham gia được quyền chỉ đọc. Liên hệ với tác giả dự án để có thể gửi thay đổi của bạn. Để biết thông tin đăng nhập MQL5.community của anh ấy hoặc cô ấy, hãy mở thuộc tính dự án thông qua menu ngữ cảnh:

Làm việc với Storage MQL5

Bộ lưu trữ MQL5 (hoặc kho lưu trữ) chỉ hoạt động với thư mục MQL5 (hoặc MQL4) của nền tảng giao dịch và với thư mục Dự án chia sẻ đặc biệt, được sử dụng cho các dự án nhóm.

Tất cả các hoạt động với Bộ lưu trữ MQL5 được thực hiện thông qua menu ngữ cảnh của cửa sổ Điều hướng và thông qua menu ngữ cảnh của trình chỉnh sửa mã nguồn:

Sử dụng các lệnh menu, bạn có thể thực hiện các hành động sau trong Bộ lưu trữ MQL5:

  • Receive: nhận data từ Storage;
  • Commit: lưu vào Storage;
  • Add files/folders vào Storage;
  • Delete files/folders từ Storage;
  • Cancel
  • View logs
  • View changes

Bắt đầu

Lưu trữ chứa thông tin dưới dạng cây tập tin. Khi kết nối với Storage, người dùng MetaEditor sẽ đọc và ghi các tệp này. Người dùng luôn làm việc với một bản sao dữ liệu cục bộ và nếu cần sẽ gửi các thay đổi tới Storage.

Để bắt đầu làm việc với dữ liệu trong Bộ lưu trữ MQL5, bạn phải liên kết thư mục dữ liệu cục bộ với thư mục phù hợp trong kho lưu trữ:

  • Nếu bạn vừa tạo một kho lưu trữ, nó trống. Bạn cần thêm một thư mục vào nó. Sau đó, một thư mục thích hợp được tạo cho thư mục được chỉ định trong kho lưu trữ (tại cùng một đường dẫn liên quan đến thư mục /MQL5). Đây là một thư mục gốc. Tất cả các hoạt động với các tập tin được thực hiện trong thư mục này.
  • Nếu bộ lưu trữ đã có một số dữ liệu, hãy tải chúng xuống một thư mục cục bộ. Để thực hiện việc này, nhấp vào ‘Cập nhật tệp từ Bộ lưu trữ’ trong menu ngữ cảnh của phần tử MQL5 (hoặc MQL4) gốc trong Bộ điều hướng.

Versioned data storage

Kiểm soát phiên bản được triển khai cho các thư mục / tệp được liên kết với kho lưu trữ, do đó các thư mục / tệp đó có phiên bản, tức là số sửa đổi. Một số sửa đổi tương ứng với mỗi cập nhật dữ liệu. Mỗi lần bạn cập nhật thư mục / tệp trong kho lưu trữ, số sửa đổi được tăng lên cho thư mục / tệp này và cho toàn bộ thư mục gốc. Một sửa đổi là một trạng thái của thư mục / tập tin tại một thời điểm.

Các thư mục gốc là thư mục MQL5 / MQL4 và các thư mục của từng dự án được chia sẻ. Các sửa đổi được quản lý riêng cho từng thư mục gốc, vì vậy chúng có các số sửa đổi riêng. Khi bạn commit thay đổi được thực hiện cho thư mục MQL5, số sửa đổi của nó sẽ tăng lên, trong khi số lần sửa đổi của các dự án không thay đổi (trừ khi các dự án sử dụng các tệp được chia sẻ từ thư mục MQL5).

Đề án hoạt động chung:

  • Khi bạn thêm một tệp vào bộ lưu trữ MQL5 hoặc trích xuất nó từ bộ lưu trữ vào PC cục bộ, các phiên bản của nó (số sửa đổi) trên máy tính và trong bộ lưu trữ sẽ khớp.
  • Số sửa đổi của tệp cục bộ (bản sao làm việc) và tệp thích hợp trong bộ lưu trữ ban đầu bằng nhau. Điều này xảy ra nếu bạn chỉ cần thêm một tập tin hoặc trích xuất nó từ kho lưu trữ.
  • Nếu bạn thay đổi tệp và commit thay đổi đối với kho lưu trữ, số sửa đổi sẽ tăng cả cục bộ và trong kho lưu trữ.
  • Khi bạn gửi thay đổi, có thể hóa ra tệp đã được chỉnh sửa bởi ai đó và số sửa đổi trong kho lưu trữ lớn hơn số cục bộ của bạn. Trong trường hợp này, bạn nên trích xuất các thay đổi từ kho lưu trữ trước khi gửi các thay đổi của riêng bạn. MQL5 Storage sẽ cố gắng hợp nhất các thay đổi trong kho lưu trữ và tệp cục bộ của bạn. Trong trường hợp này, số sửa đổi của tệp cục bộ sẽ được đặt bằng với số sửa đổi của tệp trong kho lưu trữ.
  • Mỗi giao dịch thay đổi được ghi lại trong tạp chí Lưu trữ và sau đó người dùng có thể xem khi nào, bởi ai và tập tin nào đã được thay đổi. Người dùng cũng có thể cập nhật bản sao dữ liệu cục bộ thành bản sửa đổi đã chọn và hoàn nguyên các thay đổi thành bản sửa đổi đã chọn.

Adding to Storage

Để thêm một thư mục hoặc tệp vào kho lưu trữ, chọn nó và thực hiện lệnh Thêm tệp hoặc thư mục. Điều này xuất hiện một hộp thoại hiển thị danh sách các thư mục và tập tin sẽ được thêm vào.

  • Tập tin được thêm vào cục bộ. Để gửi các thay đổi đến kho lưu trữ, hãy thực hiện commit lưu trữ.
  • MQL5 Storage chỉ hoạt động với các loại tệp sau: mq4, mq5, mqh, cpp, h, bmp, wav, ex4, ex5, tpl và set. Các loại tệp khác không thể được thêm vào kho lưu trữ.
  • Không thể thêm các tệp lớn hơn 64 MB vào bộ lưu trữ.

Chọn ra các tập tin và thư mục cần thiết và nhấn OK.

  • Nguyên tắc hoạt động lưu trữ không cho phép thêm tệp mà không có thư mục chứa chúng. Bạn không thể thêm một tệp nằm trong thư mục không được thêm vào kho lưu trữ.
  • Bạn không thể thêm các tệp riêng lẻ vào thư mục gốc /MQL4 hoặc /MQL5.
  • Trong thư mục được liên kết với kho lưu trữ, chỉ có thể thêm các thư mục con của nó. Các thư mục thấp hơn trong hệ thống phân cấp có thể được thêm vào mà không có thư mục mẹ của chúng.

Các tập tin và thư mục đã thêm được đánh dấu bằng:

Tiếp theo, những thay đổi này sẽ được gửi đến kho lưu trữ. Chọn thư mục/tệp đã thêm và thực hiện Commit to Storage.

Trong hộp thoại này, bạn cũng có thể chọn những thay đổi sẽ được gửi đến kho lưu trữ. Bạn có thể thêm một bình luận khi commit thay đổi. Nhận xét chi tiết tạo điều kiện cho việc phân tích các thay đổi trong tương lai.

Sau khi commit các thay đổi hiện tại trong kho lưu trữ, các thư mục và tệp tương ứng được đánh dấu bằng. Điều này có nghĩa là bản sao dữ liệu cục bộ không khác với dữ liệu lưu trữ tại thời điểm hoạt động commit/update cuối cùng.

  • Nếu một thư mục tương ứng với thư mục bạn thêm đã tồn tại trong bộ lưu trữ, lỗi ‘Folder already exists, update it from storage’ sẽ xuất hiện. Đối với một thư mục như vậy chọn Update from Storage. Sau đó, nó sẽ được liên kết với Storage và dữ liệu từ kho lưu trữ sẽ được thêm vào nó. Sau đó, bạn có thể gửi các thay đổi của mình đến kho lưu trữ bằng lệnh Commit to Storage.
  • Nếu kích thước tệp vượt quá 1 MB, lựa chọn sẽ tự động bị xóa khỏi nó trong hộp thoại commit. Tải về các tệp lớn cẩn thận để tránh làm quá tải hệ thống lưu trữ.

Thanh toán và cập nhật từ Bộ lưu trữ MQL5

Khai thác dữ liệu chính được thực thi khi lưu trữ được kích hoạt trong MetaEditor. Khi bạn thực thi lệnh Kích hoạt MQL5 Storage, MetaEditor sẽ kiểm tra xem Storage có chứa bất kỳ dữ liệu nào không.

  • Nếu Storage chứa dữ liệu từ thư mục MQL5 (MQL4), những dữ liệu này sẽ được tải xuống máy tính ngay lập tức.
  • Nếu Storage có các dự án chia sẻ có sẵn, các dự án này sẽ xuất hiện trong phần Dự án được chia sẻ. Để tải tập tin dự án về máy tính cục bộ, bấm Cập nhật từ Bộ lưu trữ trong menu ngữ cảnh của dự án.
  • Các bản cập nhật khác có thể được nhận từ Bộ lưu trữ bằng lệnh Cập nhật từ Bộ lưu trữ trong menu ngữ cảnh của các tệp và thư mục trong Bộ điều hướng.

Nếu bộ lưu trữ chứa các thư mục không tồn tại trong bản sao làm việc cục bộ của bạn, hãy thực hiện Cập nhật từ Bộ lưu trữ tại phần tử gốc MQL5 (hoặc MQL4) trong cửa sổ Bộ điều hướng. Tất cả dữ liệu từ Bộ lưu trữ sẽ được tải xuống các thư mục cục bộ tương ứng. Số sửa đổi của dữ liệu sẽ phù hợp với sửa đổi dữ liệu trong bộ lưu trữ.

Nếu một thư mục cục bộ chứa dữ liệu, thì trong quá trình thanh toán, dữ liệu thu được từ kho lưu trữ sẽ được thêm vào nó. Các tập tin mới sẽ được thêm vào. Đối với các tệp có tên và đường dẫn phù hợp, nó sẽ cố gắng hợp nhất dữ liệu.

Cập nhật để sửa đổi

MQL5 Storage lưu trữ toàn bộ lịch sử các thay đổi mà người dùng đã commit với bộ lưu trữ. Mỗi commit thay đổi là một phiên bản mới (trạng thái lưu trữ tại một thời điểm cụ thể). Trong quá trình làm việc song song của nhiều người dùng với dữ liệu thông qua bộ lưu trữ, bạn cần định kỳ nhận các thay đổi được thực hiện bởi những người dùng khác. Cập nhật để sửa đổi cho phép bạn cập nhật dần bản sao dữ liệu cục bộ từ kho lưu trữ.

Ví dụ, kể từ lần cập nhật cuối cùng của bản sao dữ liệu cục bộ, ba phiên bản mới đã xuất hiện trong bộ lưu trữ. Trước tiên, bạn có thể nâng cấp lên phiên bản đầu tiên, sau đó lên phiên bản thứ hai và thứ ba.

Để cập nhật lên một bản sửa đổi cụ thể, chọn một tệp hoặc thư mục và gọi nhật ký lưu trữ bằng cách nhấp vào Show Storage Log.

Trong cửa sổ mở ra, chọn sửa đổi cần thiết và chạy lệnh Cập nhật lên sửa đổi.

  • Một bản sao dữ liệu cục bộ chỉ có thể được cập nhật lên bản sửa đổi cao hơn (sau này).
  • Dữ liệu thu được từ kho lưu trữ được thêm vào bản sao cục bộ. Đối với các tệp có tên và đường dẫn phù hợp, nó sẽ cố gắng hợp nhất dữ liệu. Nếu các tệp đã được thêm vào một bản sửa đổi, chúng sẽ được thêm vào bản sao cục bộ. Nếu các tệp đã bị xóa khỏi một bản sửa đổi, chúng sẽ bị xóa khỏi bản sao cục bộ.

Hoàn nguyên để sửa đổi

MQL5 Storage lưu trữ toàn bộ lịch sử các thay đổi mà người dùng đã commit với bộ lưu trữ. Mỗi commit thay đổi là một phiên bản mới (trạng thái lưu trữ tại một thời điểm cụ thể). Bất cứ lúc nào, bạn có thể trở về một trong các trạng thái trước đó của tệp hoặc thư mục.

Để trở lại bản sửa đổi cụ thể, chọn tệp hoặc thư mục và gọi nhật ký lưu trữ bằng cách nhấp vào Hiển thị Nhật ký lưu trữ.

Trong cửa sổ đã mở, chọn bản sửa đổi cần thiết và nhấp vào Hoàn nguyên về Bản sửa đổi này.

Sau khi trở lại bản sửa đổi, tệp / thư mục đã chọn sẽ hoàn toàn trở về trạng thái đã chỉ định. Bạn có thể hoàn nguyên cả về phiên bản trước và sau.

Trong hộp thoại commit, bạn có thể chọn các tệp và thư mục đã thay đổi sẽ được commit với kho lưu trữ. Bạn có thể thêm một bình luận khi commit thay đổi. Ý kiến ​​chi tiết tạo điều kiện cho việc phân tích các thay đổi trong tương lai.

  • Thay đổi cục bộ có mức độ ưu tiên cao hơn, trong mọi trường hợp chúng được thêm vào Storage.
  • Nếu số sửa đổi trong bộ lưu trữ cao hơn bản sửa đổi cục bộ (được sửa đổi từ nguồn khác và dữ liệu cục bộ không được cập nhật từ kho lưu trữ), thì bạn sẽ gặp lỗi như ‘Đã lỗi thời’ khi cố gắng thực hiện các thay đổi. Trong trường hợp này, trước tiên hãy thực hiện lệnh Cập nhật từ Bộ lưu trữ để hợp nhất dữ liệu, sau đó chọn commit lưu trữ.
  • Hãy cẩn thận khi cập nhật các tập tin bmp và wav. Khi được hợp nhất, các tệp này được thay thế hoàn toàn bằng các phiên bản mới hơn. Vì vậy, trong quá trình cập nhật, chúng có thể được thay thế bằng các tệp từ kho lưu trữ. Để tránh các tình huống như vậy, hãy lưu riêng các bản sao của các tệp này, thực hiện lệnh Cập nhật từ Bộ lưu trữ để tăng số lần sửa đổi cục bộ, di chuyển các tệp đã sao chép trước đó trở lại và commit thay đổi thành Lưu trữ.

Xoá

Nếu bạn muốn xóa một tập tin hoặc một thư mục, hãy sử dụng lệnh Xóa tập tin hoặc thư mục. Thư mục/tập tin sẽ bị xóa khỏi bản sao dữ liệu cục bộ. Để xóa tệp hoặc thư mục khỏi kho lưu trữ, hãy thực hiện các thay đổi này bằng cách sử dụng commit lưu trữ.

  • Xóa tệp hoặc thư mục bằng lệnh Xóa tiêu chuẩn của cửa sổ Bộ điều hướng không ảnh hưởng đến Bộ lưu trữ MQL5. Với bản cập nhật tiếp theo, dữ liệu đã xóa sẽ được khôi phục từ Storage.
  • Thư mục gốc được liên kết với Storage không thể bị xóa.

Hoàn nguyên các thay đổi

Nếu bạn muốn hoàn tác các thay đổi được thực hiện trong bản sao dữ liệu cục bộ hiện tại, hãy thực thi lệnh Hoàn nguyên thay đổi cho một tệp hoặc thư mục cần thiết. Tệp / thư mục trở về trạng thái được lưu cục bộ trong quá trình đồng bộ hóa trước đó với kho lưu trữ.

Khi bạn hoàn nguyên các thay đổi, sửa đổi cục bộ ban đầu được khôi phục, không phải là sửa đổi hiện tại trong kho lưu trữ.

Storage log

Mỗi commit thay đổi đối với Lưu trữ bằng lệnh commit lưu trữ được lưu trong nhật ký. Nhật ký giúp bạn dễ dàng phân tích lịch sử thay đổi trong các dự án của bạn. Để xem nhật ký thay đổi của tệp/thư mục, chọn Hiển thị Nhật ký lưu trữ.

Phần trên hiển thị một danh sách các thay đổi:

  • Revision – số duy nhất của commit;
  • Author – tên của người dùng (giống như đăng nhập của tài khoản MQL5.community), người đã thực hiện những thay đổi này;
  • Date – ngày khi các thay đổi được commit ở định dạng UTC;
  • Comment – bình luận để thay đổi.

ử dụng lệnh menu ngữ cảnh Cập nhật lên Sửa đổi, bạn có thể cập nhật bản sao dữ liệu cục bộ thành một phiên bản đã chọn.

Phần dưới cùng của cửa sổ hiển thị danh sách các tệp được sửa đổi trong bản sửa đổi đã chọn. Các biểu tượng hiển thị các loại thay đổi:

  • file added
  • file changed
  • file deleted.

Sử dụng menu ngữ cảnh của danh sách các tệp đã sửa đổi, bạn có thể phân tích các thay đổi:

  • Compare with Working Copy – so sánh tệp đã chọn với bản sao làm việc của nó.
  • Compare with Previous Revision – so sánh tệp đã chọn với sửa đổi trước đó.
  • Compare Revisions – so sánh hai bản sửa đổi của một tệp trước khi chọn chúng ở đầu cửa sổ.

Xem lịch sử dự án

MQL5 Storage áp dụng hệ thống kiểm soát phiên bản. Điều này có nghĩa là bất kỳ sửa đổi nào của các tệp trong một dự án chung hoặc cá nhân trong bộ lưu trữ đều có thể được kiểm tra và, nếu cần, sẽ bị hủy.

So sánh bản sao làm việc và bản sửa đổi mới nhất 

Trước khi bạn gửi các thay đổi được thực hiện cho bản sao cục bộ của tệp, bạn có thể xem và kiểm tra chúng. MetaEditor so sánh trạng thái hiện tại của tệp với trạng thái tại thời điểm đồng bộ hóa cuối cùng của tệp với bộ lưu trữ dữ liệu (sửa đổi tệp cục bộ).

Để xem các thay đổi đối với tệp, chọn tệp đó trong cửa sổ “Điều hướng” hoặc mở tệp đó trong trình chỉnh sửa mã, sau đó bấm vào Sự khác biệt của các Phiên bản trong menu ngữ cảnh .

So sánh bản sửa đổi đã chọn với bản sao làm việc 

MetaEditor cho phép bạn so sánh bất kỳ phiên bản nào của tệp với bản sao làm việc hiện tại. Bạn có thể thấy tất cả các thay đổi tích lũy cho tệp trong khoảng thời gian đã chọn.

Để so sánh một tệp, chọn tệp đó và mở nhật ký lưu trữ bằng cách thực hiện lệnh menu ngữ cảnh Hiển thị Nhật ký lưu trữ. Tiếp theo, chọn bản sửa đổi để so sánh.

Chọn tệp yêu cầu ở cuối danh sách các tệp đã thay đổi trong bản sửa đổi được chỉ định và nhấp vào So sánh với Bản sao làm việc.

Merging changes – sát nhập các thay đổi

Khi làm việc trên một dự án được chia sẻ trong một nhóm, có thể xảy ra rằng các tệp tương tự được chỉnh sửa bởi nhiều người dùng cùng một lúc. Để lưu các thay đổi đó khỏi bị ghi đè, MetaEditor có chức năng hợp nhất dữ liệu.

Nếu bạn cố lưu một tệp đã được ai đó thay đổi vào bộ lưu trữ, MetaEditor sẽ nhắc bạn nhận các thay đổi mới nhất trước tiên. Khi nhận được các thay đổi, một nỗ lực được thực hiện để hợp nhất dữ liệu: các thay đổi từ bộ lưu trữ được áp dụng cho bản sao dữ liệu cục bộ và một nỗ lực được thực hiện để lưu các thay đổi cục bộ hiện tại.

Việc hợp nhất chỉ được áp dụng cho các tệp văn bản có mã nguồn (mq4, mq5, mqh, cpp và h) ở định dạng ANSI. Các tập tin Bmp và wav luôn được thay thế hoàn toàn bởi các phiên bản mới hơn.Các tập tin mã nguồn được so sánh theo từng dòng. Khi phát sinh xung đột (ví dụ: cùng một dòng được thay đổi trong tệp cục bộ và trong tệp tương ứng trong kho lưu trữ), thuật toán hợp nhất nhằm tối đa hóa việc bảo tồn các thay đổi cục bộ.

Hợp nhất mẫu

Hãy xem xét một trường hợp điển hình của việc hợp nhất hai tệp. Như đã đề cập ở trên, trong quá trình hợp nhất, các tệp mã nguồn được so sánh theo từng dòng. Nếu một tệp trong bộ lưu trữ chứa các dòng không có trong tệp cục bộ, các dòng này sẽ được thêm vào. Hãy xem xét ví dụ sau về việc hợp nhất hai tệp:

Sau khi bạn nhấp vào Cập nhật từ Bộ lưu trữ, các tệp cục bộ không thay đổi, vì các thay đổi cục bộ có mức độ ưu tiên cao hơn. Nếu tệp lưu trữ đã chứa dòng mới “x = 0;”, thì nó sẽ được thêm vào, trong khi “return (true);” dòng sẽ không thay đổi:

Nguyên tắc chính của việc hợp nhất là mức độ ưu tiên cao hơn của dữ liệu cục bộ. Thuật toán tìm cách tối đa hóa việc bảo tồn các thay đổi cục bộ.

Có nhiều loại xung đột trong quá trình hợp nhất. Trong phần này, chỉ một trong những tình huống phổ biến nhất đã được xem xét. Thuật toán hợp nhất là phức tạp và cung cấp một cách tiếp cận toàn diện trong các tệp phân tích. Thông tin thêm về việc sáp nhập có thể được tìm thấy trong một cuốn sách về Subversion.

Mở rộng Subversion 

Bộ lưu trữ MQL5 dựa trên hệ thống kiểm soát phiên bản tập trung miễn phí Subversion 1.7. Bạn có thể làm việc với bộ lưu trữ không chỉ từ MetaEditor mà còn thông qua bất kỳ ứng dụng khách bên ngoài nào hỗ trợ Subversion 1.7. Ví dụ, Tortoise SVN.

Thông tin thêm về Subversion có sẵn trong một cuốn sách đặc biệt.

Ví dụ về kết nối với bộ lưu trữ thông qua Tortoise SVN

Cài đặt phiên bản mới nhất của Tortoise SVN. Tạo bất kỳ thư mục nào để kết nối với Bộ lưu trữ MQL5 được tạo trước đó. Thư mục này sẽ được đồng bộ hóa với bộ lưu trữ. Tiếp theo, mở menu ngữ cảnh của thư mục và nhấp vào SVN Checkout.

Nhập địa chỉ lưu trữ trong trường “URL của kho lưu trữ”:

  • Nếu bạn muốn trích xuất dữ liệu từ thư mục cá nhân: https://stStorage.mql5.io/repose/MQL5.[login ], trong đó [login] là thông tin đăng nhập tài khoản của bạn trên MQL5.community
  • Nếu bạn muốn trích xuất một dự án được chia sẻ: https://stStorage.mql5.io/repose/[project name], trong đó [tên dự án] là tên dự án được chia sẻ .

Nhấn OK. Nếu bạn thấy lỗi xác thực chứng chỉ, với kết nối tới kho lưu trữ được mã hóa, hãy đồng ý chấp nhận chứng chỉ vĩnh viễn (Chấp nhận chứng chỉ vĩnh viễn). Đây là chứng chỉ tin cậy do Thawte Inc. cấp

Tiếp theo, chỉ định thông tin đăng nhập và mật khẩu của tài khoản MQL5.community của bạn:

Sau khi xác thực thành công, dữ liệu được tải xuống từ kho lưu trữ vào một thư mục cục bộ. Bây giờ bạn có thể làm việc với kho lưu trữ thông qua Tortoise SVN.

HotForex tặng thưởng 100% và miễn phí nạp rút tiền

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.