Mt4: Tất cả các kết hợp có thể có của nhiều mảng
Results 1 to 8 of 8

Thread: Mt4: Tất cả các kết hợp có thể có của nhiều mảng

  1. #1
    Chào,

    chỉ là một câu hỏi: Tôi đang mã hóa một cái gì đó giống như Chế độ tối ưu hóa của Tester.

    mỗi biến tôi muốn tối ưu hóa được xác định bằng cách đơn giản hóa:

    - Biến. Tên: Hỗ trợ tại thời điểm Loại: Số nguyên, Nhân đôi và Bools
    - Special.Value: Có thể là KHÔNG (ghi chú được sử dụng) hoặc bất kỳ giá trị nào: ví dụ: -1 không phù hợp với Bước
    - Start.Value: Luôn được sử dụng
    - End.Value: Luôn được sử dụng
    - Các bước: Có thể là KHÔNG (lưu ý được sử dụng, ví dụ: Bools chỉ sử dụng Giá trị Bắt đầuKết thúc) hoặc bất kỳ Bước nào để tăng Giá trị được sử dụng trước đó cho đến khi kết thúc


    1. ví dụ:
    -Variable.Name1: SpreadPips
    - Đặc biệt. Giá trị: KHÔNG
    - Bắt đầu. Giá trị: 0,0
    - Kết thúc. Giá trị: 15.0
    - Các bước: 1.0

    -Variable.Name2: MAPeriod
    - Đặc biệt. Giá trị: KHÔNG
    - Bắt đầu. Giá trị: 10
    - Kết thúc. Giá trị: 50
    - Các bước: 10

    -Variable.Name3: Usefilter
    - Đặc biệt. Giá trị: KHÔNG
    - Bắt đầu. Giá trị: sai
    - Kết thúc. Giá trị: đúng
    - Các bước: KHÔNG


    2. ví dụ:
    -Variable.Name1: SpreadPips
    - Đặc biệt. Giá trị: KHÔNG
    - Bắt đầu. Giá trị: 0,0
    - Kết thúc. Giá trị: 15.0
    - Các bước: 1.0

    -Variable.Name2: StochPeriod
    - Đặc biệt. Giá trị: KHÔNG
    - Bắt đầu. Giá trị: 10
    - Kết thúc. Giá trị: 50
    - Các bước: 10

    -Variable.Name3: StochSlowing
    - Đặc biệt. Giá trị: KHÔNG
    - Bắt đầu. Giá trị: 1
    - Kết thúc. Giá trị: 3
    - Các bước: 1

    -Variable.Name4: StochType
    - Đặc biệt. Giá trị: KHÔNG
    - Bắt đầu. Giá trị: 1
    - Kết thúc. Giá trị: 2
    - Các bước: KHÔNG

    -Variable.Name5: Usefilter
    - Đặc biệt. Giá trị: KHÔNG
    - Bắt đầu. Giá trị: sai
    - Kết thúc. Giá trị: đúng
    - Các bước: KHÔNG

    -Variable.Name6: LimitMaxSimultaneusTo
    - Đặc biệt. Giá trị: -1 (Không giới hạn)
    - Bắt đầu. Giá trị: 1
    - Kết thúc. Giá trị: 50
    - Các bước: 1



    Về cơ bản tôi muốn nhận tất cả các kết hợp có thể thành 1 mảng:
    sử dụng 2. ví dụ:
    - Kết hợp đầu tiên: 6 Chỉ số mảng giá trị: 0-5
    - Kết hợp tiếp theo: Chỉ số mảng 6 giá trị: 6-11
    v.v.


    Bất kỳ ý tưởng hữu ích làm thế nào để làm tốt nhất nó đều được chào đón.

    Chúc mừng

    Ati

  2. #2

    Quote Originally Posted by ;
    xin chào, chỉ là một câu hỏi: Tôi đang mã hóa một cái gì đó giống như Chế độ tối ưu hóa của Trình kiểm tra chiến lược. mỗi biến tôi muốn tối ưu hóa được xác định bằng cách đơn giản hóa: - Biến. Tên: Hỗ trợ tại thời điểm Loại: Số nguyên, Nhân đôi và Bools - Special.Value: Có thể là KHÔNG (ghi chú được sử dụng) hoặc bất kỳ giá trị nào: ví dụ: -1 không phù hợp với Bước - Bắt đầu. Giá trị: Luôn được sử dụng - Kết thúc. Giá trị: Luôn được sử dụng - Các bước: Có thể là KHÔNG (lưu ý được sử dụng, ví dụ Bools chỉ sử dụng Giá trị Bắt đầuKết thúc) hoặc bất kỳ Bước nào để tăng Giá trị được sử dụng trước đó cho đến kết thúc. Giá trị đạt được 1. ví dụ: -Variable.Name1: SpreadPips ...
    không thể thực hiện như bạn muốn trong một mảng trừ khi bạn tạo tất cả dữ liệu cùng loại, tức là: một số kép, đơn giản là bạn không thể có các loại dữ liệu hỗn hợp. một khi bạn làm điều đó không khó, hãy sử dụng mảng X hoặc một chiều duy nhất và sử dụng con trỏ bù thủ công vào đầu mỗi bản ghi. thành thật mà nói nếu bạn không biết điều này thì bạn sẽ phải vật lộn với việc tôi đang mã hóa thứ gì đó giống như Chế độ tối ưu hóa của Trình kiểm tra chiến lược

  3. #3
    Cảm ơn, không thể thực hiện như bạn muốn vào một mảng trừ khi bạn tạo tất cả dữ liệu cùng loại, nghĩa là: một số kép, đơn giản là bạn không thể có các loại dữ liệu hỗn hợp. Tôi biết điều này - vì vậy không có vấn đề với điều đó. một khi bạn làm điều đó không khó, hãy sử dụng mảng X hoặc một chiều duy nhất và sử dụng con trỏ bù thủ công vào đầu mỗi bản ghi. Tôi không thể sử dụng mảng X chiều vì chúng bị giới hạn ở 4 chiều. Vì vậy, tôi đã lên kế hoạch sử dụng một mảng duy nhất: với độ lệch cơ bản, phần bù sẽ luôn là số lượng biến được cấu hình để tối ưu hóa một cách trung thực mặc dù nếu bạn không biết điều này, bạn sẽ phải vật lộn với một thứ gì đó giống như Chiến lược Chế độ tối ưu hóa trình kiểm tra Đừng nghĩ rằng tôi sẽ gặp vấn đề lớn khi gần hoàn thành: đó là một phần của vấn đề lớn hơn Câu hỏi chính của tôi là: cách tốt nhất để tạo TẤT CẢ các kết hợp có thể là gì: trong trường hợp số lượng biến là người dùng xác định logic vòng lặp chính Chúc mừng Ati

  4. #4
    Cách tốt nhất để làm điều này là với một ngôn ngữ có các tính năng mạnh mẽ như các biến động, các lớp và cấu trúc. Sử dụng mảng và thực hiện quản lý ghi nhớ ad hoc sẽ chỉ là tàn bạo đối với mã và kiểm tra. Nó có thể được thực hiện, nhưng mọi người không làm những điều đó nữa.

  5. #5
    nó là một phần của mã MT4 - tôi cần thực hiện nó trong MT4. dù sao cũng cảm ơn.

  6. #6
    Tại thời điểm này, tôi dự định làm một cái gì đó như thế này: Viết một hàm con để trả về luôn giá trị tiếp theo chính xác cho bất kỳ BLK biến nào 1. Khởi tạo tất cả các BLK biến với giá trị đầu tiên (Special.Value hoặc nếu không được sử dụng Start.Value) một vòng lặp ở đâu đó dọc theo dòng này Đã chèn Mã trong khi (! Hoàn tất) {//Lặp qua tất cả các BLKS biến cho (IDX = 0; IDX lt; i.Size.Arrays; IDX ) {//Biến BLK này: đã ở End.Value if (usedValue # 91; IDX # 93; == End.Value # 91; IDX # 93 {if (IDX == i.Size.Arrays - 1) {Hoàn thành = phá vỡ đúng}/Đặt lại và thực hiện tiếp theo cho biến BLK này GetNextValueForBLK (IDX); } other {//Chỉ cần di chuyển BLK này về phía trước/NHẬN TIẾP THEO GetNextValueForBLK (IDX)}}}

  7. #7
    chỉ có một ý tưởng: thay vì triển khai một mục chuỗi (như một danh sách chuỗi được phân tách), tôi sẽ thực hiện một ListItem tổng quát hơn - ví dụ, điều đó sẽ cho phép tôi lặp Tối ưu hóa thông qua TF hoặc bất kỳ Chuỗi nào không nghiêm ngặt: Từng bước. anyway: đây là chủ đề ngoài chủ đề Không có bài viết dự kiến. Chúc mừng Ati

  8. #8
    Hoàn thành một triển khai cơ bản của nó với việc lưu trữ trong một mảng duy nhất và phần cuối cùng để chạy mã Tối ưu hóa giao dịch giả. Trước khi tôi mở chủ đề, tôi có một số ý tưởng phức tạp điên rồ - nhưng thực ra nó đơn giản hơn nhiều so với tôi nghĩ. vẫn sẽ cần thực hiện một số mã hóa: - muốn thực hiện quy trình Tối ưu hóa cho các biến chuỗi (có thể sử dụng cho phần Bước một danh sách chuỗi được phân tách) - và có thể trong tương lai (nếu tôi cần): datetime để làm tròn nó: hiện tại tôi chỉ không chắc chắn nên làm gì thêm cho các bước Chọn từ danh sách chuỗi được phân tách ... vẫn còn thiếu một vài bit và phần nhưng cho đến nay khá hài lòng.

Quyền đăng bài

  • Bạn không thể đăng bài viết mới
  • Bạn không thể đăng trả lời
  • Bạn không thể đăng tệp đính kèm
  • Bạn không thể chỉnh sửa bài đăng của bạn
  •  
Chính sách Cookie
Chính sách Cookie: Website forexibroker sử dụng cookies và khi tiếp tục sử dụng website bạn chấp thuận với điều này. Để có thêm thông tin, vui lòng đọc 'Thông tin Cookie'.