ループ:関数の質問に配列を渡す?
Results 1 to 7 of 7

Thread: ループ:関数の質問に配列を渡す?

  1. #1
    こんにちは、

    多分誰かがそれを正しく行う方法を知っています。

    私は異なるTF間隔をループして、私の関数に異なる配列を渡したいと思います。

    そのようなもの:問題の//ブロック

    PHP Code: <code><span style=”color: #000000”> <span style=”color: #0000BB”>intinterval</span><span style=”color: #007700”>=</span><span style=”color: #0000BB”>1</span><span style=”color: #007700”>;
    </span><span style=”color: #0000BB”>int_PeriodM1</span><span style=”color: #007700”>=</span><span style=”color: #0000BB”>10</span><span style=”color: #007700”>;
    </span><span style=”color: #0000BB”>int_PeriodM5</span><span style=”color: #007700”>=</span><span style=”color: #0000BB”>50</span><span style=”color: #007700”>;

    </span><span style=”color: #0000BB”>doubledArOpenPriceM1</span><span style=”color: #007700”>#91;#93;;
    </span><span style=”color: #0000BB”>doubledArOpenPriceM5</span><span style=”color: #007700”>#91;#93;;

    </span><span style=”color: #FF8000”>//Somewhere
    </span><span style=”color: #0000BB”>ArrayCopySeries</span><span style=”color: #007700”>(</span><span style=”color: #0000BB”>dArOpenPriceM1</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>MODE_OPEN</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>sPairName</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>PERIOD_M1</span><span style=”color: #007700”>);
    </span><span style=”color: #0000BB”>ArrayCopySeries</span><span style=”color: #007700”>(</span><span style=”color: #0000BB”>dArOpenPriceM5</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>MODE_OPEN</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>sPairName</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>PERIOD_M5</span><span style=”color: #007700”>);
    =====================



    </span><span style=”color: #FF8000”>//Blockinquestion
    </span><span style=”color: #007700”>if(</span><span style=”color: #0000BB”>interval</span><span style=”color: #007700”>==</span><span style=”color: #0000BB”>PERIOD_M1</span><span style=”color: #007700”>){
    </span><span style=”color: #0000BB”>myFunc</span><span style=”color: #007700”>(</span><span style=”color: #0000BB”>_PeriodM1</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>dArOpenPriceM1</span><span style=”color: #007700”>);
    }
    elseif(</span><span style=”color: #0000BB”>interval</span><span style=”color: #007700”>==</span><span style=”color: #0000BB”>PERIOD_M5</span><span style=”color: #007700”>){
    </span><span style=”color: #0000BB”>myFunc</span><span style=”color: #007700”>(</span><span style=”color: #0000BB”>_PeriodM5</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>dArOpenPriceM5</span><span style=”color: #007700”>);
    }


    =====================
    </span><span style=”color: #FF8000”>//Helperfunction
    </span><span style=”color: #0000BB”>voidmyFunc</span><span style=”color: #007700”>(</span><span style=”color: #0000BB”>int_Period</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>double_dArOpenPrice</span><span style=”color: #007700”>#91;#93;){
    </span><span style=”color: #FF8000”>//Domything
    </span><span style=”color: #007700”>}
    </span><span style=”color: #0000BB”></span> </span> </code> instead of the/Block in question

    私は何かをしたいのですが。

    PHPコード:<code> <span style =” color:#000000”> <span style =” color:#0000BB”> intHelperArray </span> <span style =” color:#007700”>#91; </span > <span style =” color:#0000BB”> 2 </span> <span style =” color:#007700”>#93 ;;
    </span> <span style =” color:#0000BB” > HelperArray </span> <span style =” color:#007700”>#91; </span> <span style =” color:#0000BB”> 0 </span> <span style =” color:#007700” >#93; = </span> <span style =” color:#0000BB”> _ PeriodM1 </span> <span style =” color:#007700”>;
    </span> <span style =” color:#0000BB”> HelperArray </span> <span style =” color:#007700”>#91; </span> <span style =” color:#0000BB”> 1 </span> <span style =” color:#007700”>#93; = </span> <span style =” color:#0000BB”> _ PeriodM5 </span> <span style =” color:#007700”>;

    (</span> <span style =” color:#0000BB”> intx </span> <span style =” color:#007700”> = </span> <span style =” color:#0000BB”> 0の場合</span> <span style =” color:#007700”>; </span> <span style =” color:#0000 BB”> x </span> <span style =” color:#007700”> lt; </span> <span style =” color:#0000BB”> 2 </span> <span style =” color:#007700 ”>; </span> <span style =” color:#0000BB”> x </span> <span style =” color:#007700”> ){
    </span> <span style = ” color:#0000BB”> myFunc </span> <span style =” color:#007700”>(</span> <span style =” color:#0000BB”> HelperArray </span> <span style =” color :#007700”>#91; </span> <span style =” color:#0000BB”> x </span> <span style =” color:#007700”>#93;、</span> <span style =” color:#0000BB”> double_dArOpenPrice </span> <span style =” color:#007700”>#91;#93;)
    </span> <span style =” color:#FF8000”>/正しいスパンをパスすることを知らない
    </span> <span style =” color:#007700”>}
    </span> <span style =” color:#0000BB”> </span> </span> </code>誰かが私の前でこのようなことをしたに違いないと思います(MT4で可能な場合)
    - そして、あなたが共有するのに数分かかるのに十分親切であることを願っています - どうもありがとう。

  2. #2
    The following is a script that shows how to loop through each TF and Pair Save it to the Scripts folder, click the Experts tab and then execute the script. PHP Code: <code><span style=”color: #000000”> <span style=”color: #0000BB”></span><span style=”color: #FF8000”>// ------------------------------------------------------------------
    //|close.mq4|
    //|Copyright©2004,MetaQuotesSoftwareCorp.|
    //|http://www.metaquotes.net/|
    // ------------------------------------------------------------------
    #propertycopyright”Copyright©2004,MetaQuotesSoftwareCorp.”
    #propertylink”http://www.metaquotes.net/”

    // ------------------------------------------------------------------
    //|script|
    // ------------------------------------------------------------------
    </span><span style=”color: #0000BB”>intstart</span><span style=”color: #007700”>(){

    </span><span style=”color: #0000BB”>intTimeFrame</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>TF</span><span style=”color: #007700”>;
    </span><span style=”color: #0000BB”>stringdSymbol</span><span style=”color: #007700”>;

    </span><span style=”color: #FF8000”>//currencies
    </span><span style=”color: #0000BB”>stringCurrencies</span><span style=”color: #007700”>#91;#93;={</span><span style=”color: #DD0000”>”EURUSD”</span><span style=”color: #007700”>,</span><span style=”color: #DD0000”>”GBPUSD”</span><span style=”color: #007700”>,</span><span style=”color: #DD0000”>”AUDUSD”</span><span style=”color: #007700”>};
    </span><span style=”color: #0000BB”>intcount</span><span style=”color: #007700”>=</span><span style=”color: #0000BB”>ArraySize</span><span style=”color: #007700”>(</span><span style=”color: #0000BB”>Currencies</span><span style=”color: #007700”>);

    </span><span style=”color: #FF8000”>//TimeFrames
    </span><span style=”color: #0000BB”>intTimeFrames</span><span style=”color: #007700”>#91;#93;={</span><span style=”color: #0000BB”>30</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>60</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>240</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>1440</span><span style=”color: #007700”>,</span><span style=”color: #0000BB”>10080</span><span style=”color: #007700”>};
    </span><span style=”color: #0000BB”>intcounttf</span><span style=”color: #007700”>=</span><span style=”color: #0000BB”>ArraySize</span><span style=”color: #007700”>(</span><span style=”color: #0000BB”>TimeFrames</span><span style=”color: #007700”>);

    for(</span><span style=”color: #0000BB”>intx</span><span style=”color: #007700”>=</span><span style=”color: #0000BB”>0</span><span style=”color: #007700”>;</span><span style=”color: #0000BB”>x</span><span style=”color: #007700”>lt;</span><span style=”color: #0000BB”>count</span><span style=”color: #007700”>;</span><span style=”color: #0000BB”>x</span><span style=”color: #007700”> ){
    </span><span style=”color: #0000BB”>dSymbol</span><span style=”color: #007700”>=</span><span style=”color: #0000BB”>Currencies</span><span style=”color: #007700”>#91;</span><span style=”color: #0000BB”>x</span><span style=”color: #007700”>#93;;

    for(</span><span style=”color: #0000BB”>intxe</span><span style=”color: #007700”>=</span><span style=”color: #0000BB”>0</span><span style=”color: #007700”>;</span><span style=”color: #0000BB”>xe</span><span style=”color: #007700”>lt;</span><span style=”color: #0000BB”>counttf</span><span style=”color: #007700”>;</span><span style=”color: #0000BB”>xe</span><span style=”color: #007700”> ){
    </span><span style=”color: #0000BB”>TF</span><span style=”color: #007700”>=</span><span style=”color: #0000BB”>TimeFrames</span><span style=”color: #007700”>#91;</span><span style=”color: #0000BB”>xe</span><span style=”color: #007700”>#93;;
    Print(</span><span style=”color: #0000BB”>dSymbol</span><span style=”color: #007700”> </span><span style=”color: #DD0000”>”-”</span><span style=”color: #007700”> </span><span style=”color: #0000BB”>TF</span><span style=”color: #007700”>);


    }
    }
    return(</span><span style=”color: #0000BB”>0</span><span style=”color: #007700”>);
    }
    </span><span style=”color: #FF8000”>// ------------------------------------------------------------------
    </span><span style=”color: #0000BB”></span> </span> </code>

  3. #3

    Quote Originally Posted by ;
    以下は、各TFとペアをループしてScriptsフォルダに保存し、[Experts]タブをクリックしてからスクリプトを実行する方法を示すスクリプトです。 [php]/ -------------------------------------------- ---------------------- /| close.mq4 |/| Copyright©2004、MetaQuotes Software Corp. |/| http://www.metaquotes.net/|/ ----------------------------------------------- ------------------- #property copyright Copyright ...
    cyber1、お時間をいただきありがとうございます。私が探していたものとは異なります。各TFに応じた配列(ArrayCopyシリーズだけでなく他のものも)があります。

  4. #4

    Quote Originally Posted by ;
    こんにちはmj、あなたはその配列の始値をマージすることができますが、次のような別のtf start indexを愛するために固定サイズの配列を持つ必要があります。PHPコード:<code> <span style =” color:#000000”> <span style = ” color:#0000BB”>
    </span> <span style =” color:#FF8000”>/ - copydArOpenPriceM1dArOpenPriceM5todaOpenPrice
    /---#0M1、startedfrom0 * ARR_OPEN_SIZE
    <span> <span style =” color:#0000BB”> ArrayCopy </span> <span style =” color:#007700”>(</span> <span style =” color:#0000BB”> daOpenPrice </span > <span style =” color:#007700”>、</span> <span style =” color:#0000BB”> dArOpenPriceM1 </span> <span style =” color:#007700”>、</span> < span style =” color:#0000BB”> 0 </span> <span style =” color:#007700”> * </span> <span style =” color:#0000BB”> ARR_OPEN_SIZE </span> <span style =” color:#007700”>、</span> <span style =” color:#0000BB”> 0 </span> <span style =” color:#007700”>、</span> <span style =”色:#0000BB”> ARR_OPEN_SIZE </span> <span style =”色:#007700”>);
    </span> <span style =” color:#FF8000”>/---#1M5、開始1 * ARR_OPEN_SIZE
    </span> <span style =” color:#0000BB”> ArrayCopy </span> <span style =” color:#007700”>(</span> <span style =” color:#0000BB”> daOpenPrice </span> <span style =” color:#007700”>、</span> <span style =” color:#0000BB”> dArOpenPriceM5 </span> <span style =” color:#007700”>、</span> <span style =” color:#0000BB”> 1 </span> <span style =” color:#007700”> * </span> <span style =” color:#0000BB”> ARR_OPEN_SIZE </span> <span style =” color:#007700”>、</span> <span style = ” color:#0000BB”> 0 </span> <span style =” color:#007700”>、</span> <span style =” color:#0000BB”> ARR_OPEN_SIZE </span> <span style =” color ::#007700”>);
    </span> <span style =” color:#FF8000”>/lt; - copydArOpenPriceM1dArOpenPriceM5todaOpenPrice



    span> <span style =” color:#007700”>}
    </span> <span style =” color:#0000BB”> </span> </span> </code>
    バンドン、たくさんのおかげで - それをちらっと見て、それは1つの可能な選択肢であるように思われます - それを前に考えていませんでした。だからこれは役に立つ点です。私はそれと少し遊んでいきます。他の誰かが私が余分なコピー部分(上記の部分)を避けることができる他のアプローチを持っている場合(9 TFには36のArrayCopySeriesがあります)私もあなたの入力を適切にするでしょう。

  5. #5
    1添付ファイル
    Quote Originally Posted by ;
    私が気付いたことだけです。私はArrayCopySeriesに固定サイズの配列を渡したことがないので、チェックアウトしたいと思いました。とにかくサイズ変更されているようで、実際には効果がありません。下の画像:[php] #define ARR_OPEN_SIZE 2000 datetime dtArTimeM1 []; datetime dtArTimeM5 []; datetime dtArTimeM1_limit [ARR_OPEN_SIZE]; datetime dtArTimeM5_limit [ARR_OPEN_SIZE]; int start(){Comment(); int beforedtArTimeM1Size = ArraySize(dtArTimeM1); int beforedtdtArTimeM5Size ...
    そう、私はそれを試してみて、はいそれはリサイズしたが、このブロックはARR_OPEN_SIZEと同じくらいコピーするだけであるので問題ではない。// - dArOpenPriceM1 dArOpenPriceM5をdaOpenPriceにコピーする//---#0 M1、0 *から開始ARR_OPEN_SIZE ArrayCopy(daOpenPrice、dArOpenPriceM1、0 * ARR_OPEN_SIZE、0、#91; b#93; ARR_OPEN_SIZE#91;b#93;);/---#1 M5、1から開始* ARR_OPEN_SIZE ArrayCopy(daOpenPrice、dArOpenPriceM5、1 * ARR_OPEN_SIZE、0、#91; b#93; ARR_OPEN_SIZE#91;b#93;);/lt; - dArOpenPriceM1 dArOpenPriceM5をdaOpenPriceにコピーComment(Array daOpenPricegt; gt; M1 @#91; 0#93;、DoubleToStr(daOpenPrice#91; 0#93;、Digits)、M5 @#91; 2000#93 ;、DoubleToStr(daOpenPrice#91; 2000#93;、Digits)、niOpengt; gt; M1バー#0、DoubleToStr(iOpen(NULL、PERIOD_M1,0)、Digits)、M5バー#0、DoubleToStr(iOpen(NULL、) PERIOD_M5、0)、桁数))。
    https://www.forexgroove.com/brokers/...iscussion.html

  6. #6
    私が考えている何か他のものがあります:配列を渡す代わりに。 dArOpenPriceM1 ArrayCopySeries(dArOpenPriceM1、MODE_OPEN、Symbol()、PERIOD_M1);私は各バーのための私の関数で行うことができます:ダブルiOpen(文字列のシンボル、int型のタイムフレーム、int型のシフト)と異なるTimeFrame値を渡すだけ

  7. #7
    Quote Originally Posted by ;
    私もそうです
    、私はそれを試してみて、はいそれはリサイズしたが、このブロックはARR_OPEN_SIZEと同じくらいコピーするのでそれは問題ではない
    はい - 私はそのような配列を渡すことがなかったのでただ興味がありました - しかし一般的な考えはうまくいくでしょう。私は任意のオフセットでも推測します - それらを渡す必要があるだけです(私はすでに他の配列でこれを行います)。あなたの非常に親切。

投稿権限

  • Youma新しいスレッドを投稿しない
  • Youmaは返信しない
  • あなたは添付ファイルを投稿しないかもしれない
  • Youma Notedityourposts
  •  
  • スマイリーはオンです
  • スマイリーはオンです
  • [IMG]コードがオンです
  • [VIDEO]コードがオンです
  • HTMLコードがオフです
This website uses cookies
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.