どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 621

 
YuraZ:



ありがとうございます!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

もし、不謹慎だと思わなければ......:))) テスターの正しい動かし方をアドバイスしてください。試行錯誤しているうちに、うまくいかない。

#import  "shell32.dll"
    int ShellExecuteA(int hwnd,string Operation,string File,string Parameters,string Directory,int ShowCmd); 
#import

int Start;

int start()
   {
    //---------------------------------- Запустим Тестер -------------------------
    //Start   = ShellExecuteA(0, "Open", "terminal.exe", FileOptim, PuthTester_h, 3);
    //Start   = ShellExecuteA(0, "Open", "terminal.exe", "optimise.ini", "D:\Alpari_Terminal_Tester\tester", 3);

    return(0);
   }
 
Leo59:

ありがとうございます!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

不謹慎だと思わなければ......:))) テスターの正しい動かし方を教えてください。試行錯誤しているうちに、うまくいかない。

自己最適が決めた!?クール...というのは、かっこいいテーマですね。

1.のように2つの方法があります。

1) 同じ端末のExpert Advisorから最適化を開始します。

2) 別の端末を設定する - 端末を起動し、最適化の 結果を読み取る


2番目の方法を試しているようですが、もっと面倒な方法です。


まずは交換してください。

ShellExecuteA  на ShellExecuteW
 
YuraZ:

自己最適が決めた!?クール...というのは、かっこいいテーマですね。

1.のように2つの方法があります。

1) 同じ端末のExpert Advisorから最適化を開始します。

2) 別の端末を設定する - 端末を起動し、最適化の結果を読み取る


2番目の方法を試しているようですが、もっと面倒な方法です。


と置き換える必要があります。



ありがとうございます!!!!!!!!!!!!!!!!!!!!!!!!
あなたの、言うとおりです :))要は自己最適化です。


1) 同一端末のExpert Advisorから最適化を開始する。

現在のバーチャルトレードの結果を踏まえてやっています

2) 別の端末を設定する - それらを起動、最後に最適化 結果を読み取る

秋にXEONのauto_optimizationで掘っていました。TestCommanderは、市販のブラックボックスです。変形1)で動かない機能を何とか自分で実装することにした。

 
pu6ka:

このインジケータをM1に投げると、新しいバーが現れると、左のワニ線が「一掃される」。これは必要ですか?



問題を解決した。

#property copyright "forexman77@list.ru"
#property link      "forexman77@list.ru"
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Green
#property indicator_color2 Red
//--- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
extern int p  =10;
double val_plus[];
double val_minus[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtMapBuffer1);
   SetIndexStyle(1,DRAW_LINE);
   SetIndexBuffer(1,ExtMapBuffer2);
   IndicatorDigits(Digits+1);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
    int counted_bars=IndicatorCounted(),                      
    limit;
    double
    indicator_plus,indicator_minus;
   if(counted_bars>0)
      counted_bars--;
   limit=Bars-counted_bars;
   for(int i=0;i<limit;i++)
   { 
     indicator_plus=0;
     indicator_minus=0;
     ArrayInitialize(val_plus,0);
     ArrayInitialize(val_minus,0);
   for(int k=p;k>=0;k--)
     {
     ArrayResize(val_plus,p);
     ArrayResize(val_minus,p);
     if(iMA(NULL,PERIOD_CURRENT,21,0,MODE_EMA,PRICE_CLOSE,i+k)>iMA(NULL,PERIOD_CURRENT,21,0,MODE_EMA,PRICE_CLOSE,i+k+1))val_plus[k]=1;
     if(iMA(NULL,PERIOD_CURRENT,21,0,MODE_EMA,PRICE_CLOSE,i+k+1)>iMA(NULL,PERIOD_CURRENT,21,0,MODE_EMA,PRICE_CLOSE,i+k))val_minus[k]=1;

     if (val_plus[k] > 0){indicator_plus=indicator_plus+val_plus[k];}
     if (val_minus[k] > 0){indicator_minus=indicator_minus+val_minus[k];}
     }
          ExtMapBuffer1[i]=indicator_plus;
          ExtMapBuffer2[i]=indicator_minus;
   }

   return(0);
  }
 
どなたか、ファイルを ある場所から別の場所にコピーする簡単なスクリプトコードを書いていただけませんか?

それとも、別の端末でTesterを実行するのでしょうか?

まあ、まだ無理なんですけどね。できる?

 
Leo59:
ある場所から別の場所にファイルをコピーする、簡単なコードのスクリプトを書くことが、誰にでもできますか?

あるいは、誰が別の端末でTesterを実行するのか?

ここでは、まだ無理です。あなたは?


そして、できないんです!なぜなら、その必要がないんです。必要なことは、自分で勉強しているので、理屈は変えなくていいのです

特に、自分でやったのだから、何か手を加える必要があっても、問題なし!

基本から学ぶ「マッチ」、ヒントギフトで学ぶことはありませんし、最終的に多くの時間は何のために無駄になります

がんばってください。:)

 
borilunad:


そして、まだ必要でないからできないのだ!必要なことは、自分の理屈を変えないように、自分でやるのが当たり前になっています

自分でやるからには、何か手を加える必要があっても、問題ありません。

基本を学べ!ヒントギフトでは学べないし、長い目で見ればより多くの時間を無駄にすることになる

がんばってください。:)

他人のローフを食べるな」というのは正しい。

バルセロナの街は素晴らしいですね。緑の芝生に囲まれた路面電車の線路は、それだけで価値があります。しかし、スペインの女性は、サンクトペテルブルクの女性とは違って、肌が短く、頭が固い。
:))オモシロから書けないなんて、どんな戯言だ。それが私です。

大丈夫です!皆さんも頑張ってください。

 
Leo59:

たしかに、他人のパンをじろじろ見てはいけませんね。

すごい街ですよ、バルセロナは。路面電車だけでも、緑の芝生に囲まれ、それなりの価値があるのだ。しかし、スペインの女性は、サンクトペテルブルクの女性とは違って、肌が短く、頭が固い。
:))本当に二日酔いの時に書けない戯言とは。それが私です。

大丈夫です!皆さんも頑張ってください。


斤量」の話ではなく、「浪費した分、痛くない」ように、より生産的な学習方法の話です

まあ、人それぞれですからねー。:(

 
artmedia70:

こんな風にやってみるといいかもしれませんね。

渡される変数にシンボルとマジックを入力。チェックはしていないんですね。




ありがとうございました。月曜日に試してみます。とはいえ、この疑問は私にはまだわからない。 注文をキャンセルすると、エラーが発生するのですが?ところで、同じコードを古いテスターで試してみなければなりませんね。新しいテスターでは、多くのマイナーチェンジが行われています。結果がどうなるかは、いつもわからない。
 
001:


ありがとうございました。月曜日に試してみます。とはいえ、私にはまだ疑問が残りますが。注文をキャンセルすると、エラーが発生するのですが?ところで、同じコードを古いテスターで試してみなければなりませんね。新しいテスターでは、多くのマイナーチェンジが行われています。結果がどうなるかは、いつもわからない。

今は思い出せない...。すべてのSellを閉じる場合は、関数から戻る必要はありません。寝ている間にそこがぐちゃぐちゃになった。そうやって、全部を閉じるようにするんですね。

//+------------------------------------------------------------------+
void  CheckForLongetivityClose_Sell(int symbol, int magic) {
   if(DayOfWeek()==0 || DayOfWeek()==6) return;
   for(int i=OrdersTotal()-1; i>=0; i--) {
      if(OrderSelect(i,SELECT_BY_POS)) {
         if(OrderMagicNumber()!=magic) continue;
         if(OrderSymbol()!=symbol)     continue;
         if(OrderType()!=OP_SELL)      continue;
         datetime openTime_S= OrderOpenTime();
         int timeDistance_S = TimeCurrent()-openTime_S;
         if(timeDistance_S>60*BarrierMinute_S) {
            bool  res= OrderClose(OrderTicket(),OrderLots(),Ask,3,clrRed);
            }
         }
      }
}
//+------------------------------------------------------------------+

もちろん、一般的には、この行の代わりに

bool  res= OrderClose(OrderTicket(),OrderLots(),Ask,3,clrRed);

サーバ側でリターンコード処理を行うポジションをクローズ するためには、通常の関数を呼び出す必要があります。