Results 1 to 9 of 9

Thread: Array daripada julat? Bantuan?

  1. #1
    EDIT: Ini adalah terima kasih kepada Johnvanwijk!
    https://www.justgetforex.com/trading...dom-calls.html


    Hei lelaki,
    Oleh itu, saya telah mencuba beberapa perkara tetapi ia memberi saya Array kesilapan dari jarak jauh.
    Ia menarik anak panah hijau sama sekali tetapi anak panah merah tidak akan berfungsi.

    Jika seseorang boleh memberitahu saya apa yang saya lakukan salah, ia akan menjadi hebat.

    Bukan kerana saya cuba untuk mendapatkan lilin yang belum ada atau sama sekali sejauh yang saya tahu.
    Saya dapati bahawa sesetengah orang mungkin mengatakan bahawa ia akan menjadi bar yang boleh diakses lewat tetapi saya telah diuji walaupun dengan had 1000 yang saya pasti carta saya ada dan ia masih memberi saya jarak.

    Ini adalah kod:

    Kod dimasukkan/ --------------------------------------------- --------------------- /| FractalsExercise.mq4 |/| |/| https://www.mql5.com |/p ----------------------------------------------- ------------------- #property copyright #property Hyperlink https://www.mql5.com #property variant 1.00 #property strict #property indior_chart_window double Highs # ​​91; # 93 ;; duanya rendah # 91; # 93 ;;/ ----------------------------------------------- ------------------- /| Fungsi permulaan penunjuk kustom |/ ----------------------------------------------- ------------------- int OnInit ()/- melukis fesyen SetIndexStyle (0, DRAW_ARROW, EMPTY, 1, clrGreen); SetIndexArrow (0, 234); SetIndexStyle (1, DRAW_ARROW, EMPTY, 1, clrRed); SetIndexArrow (1, 233);/- penunjuk penunjuk SetIndexBuffer (0, Tinggi); SetIndexBuffer (1, Lows);/- kembali (INIT_SUCCEEDED);/ ----------------------------------------------- ------------------- /| Fungsi lelaran indikator khusus |/ ----------------------------------------------- ------------------- int OnCalculate (const int rates_total, const int prev_calculated, const datetime time # 91; # 93 ;, const double available # 91; # 93; , bilangan double double # 91; # 93 ;, double double non # 91; # 93 ;, double shut # 91; # 93 ;, const extended tick_volume # 91; # 93 ;, const volume long # 91; # 93; , int int spread # 91; # 93; -RRB-/- int I = 1; int ii = 1; int Restrict = Bar - 1; while (I lt; Restrict) if (High # 91; t # ; gt; Tinggi # 91; t 1 # 93; -RRB- jika (Tinggi # 91; t # 93; gt; Tinggi # 91; I - 1 # 93; -RRB- Tip # 91; I # 93; = (# 91; 93 # 93; lt; Kos Rendah # 91; 93 1 # 93; -RRB- jika (Rendah # 91; 91 # 93; lt; Rendah Kos # 91; 91 - 1 # 93; -RRB- Tip # 91; 93 # 93; = Rendah # 91; 93 # 93 ;; ii ;/- nilai pulangan prev_alculated untuk pulangan panggilan seterusnya (rates_total);/ ----------------------------------------------- -------------------

    Terima kasih!

  2. #2
    Jika saya membahagikan gelung sementara kepada dua indikator ia berfungsi dengan tidak satu kesalahan tetapi tidak apabila mereka berada di sana bersama-sama. Ia tidak mengakses apa-apa yang tidak ada sama ada. Oleh itu, saya tidak pasti mengapa ia mengatakan ia berada di luar jangkauannya.

  3. #3

    Quote Originally Posted by ;
    Hei guys, Jadi saya cuba untuk menggambar beberapa perkara namun ia memberi saya kesilapan Array dari jangkauan. Ia menarik anak panah hijau sama sekali bahawa anak panah tidak berfungsi. Jika seseorang boleh memberitahu saya dengan tepat apa yang saya lakukan salah, ia akan menjadi hebat. Kerana saya cuba untuk mendapatkan semua atau lilin yang tidak ada lagi sejauh yang saya faham, itu tidak. Saya mendapat bahawa sesetengah orang boleh mengatakan bahawa ia akan melampaui bar yang tersedia tetapi saya telah menguji walaupun saya yakin bahawa carta saya mengandungi dan ia memberikan saya jarak. Berikut ialah kod:/// ----------------------------------------- ------------------------- ...
    Dalam setiap gelung, cubalah memecahnya dengan sesuatu seperti ilustrasi di bawah untuk mengelakkan daripada melangkau Bar yang disediakan: Kod yang Dimasukkan jika (I gt; = Bar-1) pecah; Kod dimasukkan jika (ii gt; = Bar-1) pecah;

  4. #4
    1 Lampiran
    Quote Originally Posted by ;
    petikan Dalam setiap gelung, cubalah memecahnya menggunakan sesuatu seperti contoh di bawah untuk menghalang melangkau Bar yang tersedia: jika (I gt; = Bar-1) pecah; harus (ii gt; = Bar-1) pecah;
    Dari apa yang saya dapat lihat itulah yang saya hadkan tetapi saya memasukkannya ke dalam kod itu hanya untuk memeriksa dan mencubanya di banyak tempat tetapi kesilapan itu berterusan. Saya benar-benar hairan mengapa ia memberi saya kesilapan. Ini adalah gambaran hasil sehingga Sekarang. Ia harus melakukan perkara yang sama dengan anak panah untuk Lows. Anda juga mungkin melihat kesilapan hanya untuk memberi idea kepada mereka.

  5. #5

    Quote Originally Posted by ;
    petikan Dari apa yang saya dapat lihat itu betul-betul apa Batasan saya sudah pun saya memasukkannya ke dalam kod itu hanya untuk memeriksa dan mencubanya di beberapa tempat namun kesilapan itu berterusan. Saya benar-benar hairan mengapa ia memberi saya kesilapan. Ini adalah gambaran hasilnya setakat ini. Ia mesti melakukan perkara yang sama dengan anak panah menunjuk ke Lows anda. Anda juga boleh melihat kesilapan hanya untuk memberi idea kepada orang ramai. gambar
    Barisan mana yang 71?

  6. #6

    Quote Originally Posted by ;
    petikan baris mana yang 71?
    Itu boleh Lows [ii] = Dikurangkan [ii]; dalam gelung sementara kedua.

  7. #7
    Hi AntiVi, anda mesti menunjukkan jumlah buffer yang diperlukan .... Perubahan berikut pada permulaan pada kod anda (selepas #property indior_chart_window) menjadikannya berfungsi dengan baik .... #property indior_buffers 2 Cheers Enjoy! John Inserted Code/ -------------------------------------------- ---------------------- /| FractalsExercise.mq4 |/| AntiVi |/| https://www.mql5.com |/ ----------------------------------------------- ------------------- #property copyright AntiVi #property link https://www.mql5.com #property variant 1.00 #property stringent #property indior_chart_window/START ADDED JvW #property indior_buffers 2/END ADDED JvW double Highs # ​​91; # 93 ;; duanya rendah # 91; # 93 ;;/ ----------------------------------------------- ------------------- /| Fungsi permulaan penunjuk kustom |/ ----------------------------------------------- ------------------- int OnInit ()/- gaya melukis SetIndexStyle (0, DRAW_ARROW, EMPTY, 1, clrGreen); SetIndexArrow (0, 234); SetIndexStyle (1, DRAW_ARROW, EMPTY, 1, clrRed); SetIndexArrow (1, 233);/- penunjuk penunjuk SetIndexBuffer (0, Tinggi); SetIndexBuffer (1, Lows);/- kembali (INIT_SUCCEEDED);/ ----------------------------------------------- ------------------- /| Fungsi lelaran indikator khusus |/ ----------------------------------------------- ------------------- Int OnCalculate (const int rates_total, const int prev_calculated, const datetime period # 91; # 93 ;, const double open # 91; # 93; , jumlah double top # 91; # 93 ;, const double low # 91; # 93 ;, const double shut # 91; # 93 ;, const long tick_volume # 91; # 93 ;, const long volume # 91; # 93; , sebilangan int bersurai # 91; # 93; -RRB-/- int I = 1; int ii = 1; int Membataskan = Bar - 1; sementara (lt; ; gt; Tinggi # 91; t 1 # 93; -RRB- jika (Tinggi # 91; t # 93; gt; Tinggi # 91; I - 1 # 93; -RRB- Tinggi # 91; I # 93; = (# 91; 93 # 93; lt; Rendah # 91; 93 1 # 93; -RRB- jika (Rendah # 91; ii) # 93; lt; Rendah # 91; ii - 1 # 93; -RRB- Lows # 91; 93 # 93; = Rendah # 91; 93 # 93 ;; ii ;/- nilai pulangan prev_alculated untuk hasil panggilan kedua (rates_total);/ ----------------------------------------------- -------------------

  8. #8

    Quote Originally Posted by ;
    Hai, anda harus menunjukkan berapa banyak buffer diperlukan .... Perubahan seterusnya pada permulaan dalam kod anda (kemudian #property indior_chart_window) menjadikannya berfungsi dengan baik ... #property indior_buffers two Cheers Enjoy! John/p ---------------------------------------------- -------------------- /| FractalsExercise.mq4 |/| |/|
    https://www.mql5.com|/p ----------------------------------------------- ------------------- #property copyright #property link https://www.mql5.com #property version 1.00 #property #property stringent ...
    Anda tuan adalah seorang jenius. Saya tidak boleh berfikir bahawa pembaikan itu benar-benar mudah. Saya akan menyalahkan ini dengan pengalaman saya sendiri dan lakukan sendiri pembelajaran. Saya menghabiskan masa selama 5 jam untuk mencarinya dan semua yang saya dapati adalah penyelesaian yang tidak menyelesaikan apa-apa. Saya akan mengedit jawatan pertama untuk menambah pembaikan supaya orang dapat mencari jawapan mudah jika mereka bersusah payah mencarinya! Terima kasih banyak!

  9. #9

    Quote Originally Posted by ;
    petikan Anda tuan adalah seorang jenius. Saya tidak percaya pembetulan itu mudah. Lakukan sendiri belajar dan saya akan menyalahkan pengalaman saya sendiri untuk ini. Saya menghabiskan masa selama 5 jam untuk memikirkannya dan semua yang saya dapati adalah penyelesaian yang tidak membaiki apa-apa. Saya akan mengedit siaran untuk menambah penetapan supaya orang dapat mencari jawapan sekiranya mereka mengganggu mencarinya! Terima kasih banyak!
    Hi AntiVi, Seiring dengan john yang telah dikongsi, anda juga ingin mendapatkan kebiasaan menggunakan maklumat yang dilepaskan sebagai argumen ke dalam tujuan OnCalculate dan bukannya bergantung pada maklumat dari yang dibina dalam var. Juga, anda ingin memastikan anda melaksanakan anda. Anda tidak perlu memproses keseluruhan gelung (semua data carta) pada setiap tanda. Anda hanya perlu memproses bahagian data penunjuk yang memerlukan pengemaskinian. Berikut adalah ilustrasi yang baik tentang cara menggunakan fungsi OnCalculate ini. Memasukkan Kod #property ketat #property indior_chart_window/START ADDED JvW #property indior_buffers 2/END ADDED JvW double Highs # ​​91; # 93 ;; dua tangan # 91; # 93 ;;/ADDED ----------------------------------------------- ------------------- /| Fungsi permulaan penunjuk kustom |/ ----------------------------------------------- ------------------- int OnInit ()/- melukis fesyen SetIndexStyle (0, DRAW_ARROW, EMPTY, 1, clrGreen); SetIndexArrow (0,234); SetIndexStyle (1, DRAW_ARROW, EMPTY, 1, clrRed); SetIndexArrow (1,233);/- penunjuk penunjuk SetIndexBuffer (0, Tinggi); SetIndexBuffer (1, Lows); kembali (INIT_SUCCEEDED);/ ----------------------------------------------- ------------------- /| Fungsi lelaran indikator khusus |/ ----------------------------------------------- ------------------- Int OnCalculate (const int rates_total, const int prev_calculated, const datetime period # 91; # 93 ;, const double open # 91; # 93; , bilangan double double # 91; # 93 ;, double double # 91; # 93 ;, double close # 91; # 93 ;, const extended tick_volume # 91; # 93 ;, const volume long # 91; # 93; , int int ster # 91; # 93; -RRB-/- int limit = rates_total - prev_calculated - two; limit = limit lt; 1? 1: batasan; untuk (int I = keterbatasan, I gt; 0; -) jika (tinggi # 91; I # 93; gt; besar # 91; I 1 # 93; besar # 91; I # 93; gt; 91; I # 93; = besar # 91; s # 93 ;; (rendah # 91; I # 93; lt; rendah karb91; I 1 # 93; rendah karb91; carb91; i-1 # 93; -RRB- Tip # 91; I # 93; = rendah # 91; t # 93 ;;/- nilai pulangan prev_alculated untuk hasil panggilan kedua (rates_total );

Kebenaran Posting

  • Anda tidak boleh menghantar thread baru
  • Anda tidak boleh membalas kiriman
  • Anda tidak boleh mengedit siaran anda
  • Anda tidak boleh menyiarkan lampiran
  •  
  • Kod BB Hidup
  • Smilies Hidup
  • Kod [IMG] adalah Hidup
  • Kod [VIDEO] adalah Hidup
  • Kod HTML Tidak Hidup
Polisi Kuki
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.