[アーカイブ!】どんなルーキーの質問でも、フォーラムを散らかさないように。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 2. - ページ 434

 

ヘルプ )

1.新規約定(未決済注文ではない)注文を瞬時に検知(手動で約定、EAで約定)システムが未決済の注文を検知した場合、2.に続く。

2.どんなタスクも、この注文のためだけに一度だけ実行されます。

さらに1つ注文が開くと、再び1点目から2点目へと動作が開始されます。

プログラミングが 初めての人を助けてあげられるか?

よろしくお願いします。どうすればいいのでしょうか。私は、新しく開いた注文ごとに、この注文のためだけに、その後のタスクを1-n時間、永遠に識別しています。

ありがとうございます。

アウトラインはあるが、オーダーのインデックスはない。

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{


//----

for (int k=OrdersTotal()-1;k>=0;k--)//Начинаем перебор всех открытых ордеров начиная с конца
{
RefreshRates();//Обновляем котировки, необходимо при модификации или закрытии ордеров
if (OrderSelect(k,SELECT_BY_POS,MODE_TRADES)==true&&OrderSymbol()==Symbol())//Выбираем ордер с номером из цикла, и проверяем, совпадает ли символ ордера с текущим
{
int cmd=OrderType();//В переменной cmd будем хранить тип ордера
if(cmd>1)//Нас интересуют только отложенные ордеры
{
//Что-то делаем
}
if (cmd==OP_BUY)//А вдруг на покупку ордер?
{
Alert (GetLastError());
}
if (cmd==OP_SELL)//Или на продажу?
{
Alert (GetLastError());
}
}
}
//----
return(0);
}

 

みなさん、こんにちは。

なぜこのインジケータはすべてのバーをプロットしないのか、グラフを見るために配置を変えなければならないのか、教えてください。

//+------------------------------------------------------------------+
//|                                                Ср.отклонение.mq4 |
//|                                                Copyright © 2011. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property  copyright "Copyright © 2011, Dimon"
#property  link      "todem5@gmail.com"
//---- indicator settings
#property  indicator_separate_window
#property  indicator_buffers 1
#property  indicator_color1  Lime
#property  indicator_level1  100
#property  indicator_style1  1
#property  indicator_level2  20
#property  indicator_style2  1
//#property  indicator_color2  Red
#property  indicator_width1  2
//---- indicator parameters
//---- indicator buffers
extern int period=24;
double     MacdBuffer[];
double     SignalBuffer[];
int tf, k;
string S;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
   tf=Period();
   S=Symbol();
//---- drawing settings
   SetIndexStyle(0,DRAW_LINE);
   //SetIndexStyle(1,DRAW_LINE);
   
   IndicatorDigits(Digits+1);
//---- indicator buffers mapping
   SetIndexBuffer(0,MacdBuffer);
   //SetIndexBuffer(1,SignalBuffer);
//---- name for DataWindow and indicator subwindow label
   IndicatorShortName("Ср.отклонение.: "+period+", в %: ");
   SetIndexLabel(0,"MACD");
   //SetIndexLabel(1,"Signal");
//---- initialization done
      
   return(0);
  }
//+------------------------------------------------------------------+
//| Moving Averages Convergence/Divergence                           |
//+------------------------------------------------------------------+
int start()
  {
   if (!IsOptimization() && !IsTesting() && !IsVisualMode()) {
   k=WindowFind("Ср.отклонение.: "+period+", в %: ");
   ObjectDelete("OrdCr2");
   ObjectCreate("OrdCr2", OBJ_LABEL, k, 0, 0);
   ObjectSet("OrdCr2", OBJPROP_CORNER, 2);
   ObjectSet("OrdCr2", OBJPROP_XDISTANCE, 5);
   ObjectSet("OrdCr2", OBJPROP_YDISTANCE, 22);
   ObjectSet("OrdCr2", OBJPROP_COLOR, Red);
   ObjectSetText("OrdCr2", "Ср.откл.1", 10, "Arial Black", Moccasin);
   }      
   double sum, f;
   int limit;
   int P;
   if (Digits==5) {P=100000;}
   int counted_bars=IndicatorCounted();
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;
//---- macd counted in the 1-st buffer
   for(int i=0; i<limit-period; i++){
      sum=0;
      for (int k=i+1;k<=i+period;k++){
      if (iHigh(Symbol(),tf,k)>iLow(Symbol(),tf,k)) {f=(iHigh(Symbol(),tf,k)-iLow(Symbol(),tf,k));}
      if (iHigh(Symbol(),tf,k)<iLow(Symbol(),tf,k)) {f=(iLow(Symbol(),tf,k)-iHigh(Symbol(),tf,k));}
      sum=sum+(f*P);
      }   
      MacdBuffer[i]=sum/24; 
      }
   
   return(0);
  }
//+------------------------------------------------------------------+
ファイル:
 
Roman.:
みんな、Excelで数値の端数部分の分割(プログによる認識)をカンマからドットに 置き換える方法を教えてくれませんか?よろしくお願いします。


コントロールパネル - 言語と地域標準

例えば、セミコロンがフルストップになるように、標準を英語に変えてみてください。
データ転送の問題を解決し、再び標準に戻す

 
Roman.:
みんな、Excelで数値の端数部分の分割(プログによる認識)をカンマからドットに 置き換える方法を教えてくれませんか?ありがとうございました。

2つ目の方法は、Excelの設定で区切り文字を変更することです
 
abolk:


コントロールパネル - 各地域の標準に合わせた言語

標準を例えば英語に変更する-コンマはフルストップになる。
データ転送の問題を解決し、再び標準に戻す


ありがとうございました。
 
sergeev:


2つ目の方法は、Excelの設定自体でセパレータを変更することです。

ありがとうございます...クラブ会長の助言で、すでにそうしているのですが...。:-))) エクセル自体の設定でセパレータを変更する方法 - 見つけていません。
 
Roman.:

excel - 見つけられませんでした。
Excelのバージョン?
 
sergeev:
Excelのバージョン?


2003г
 
Roman.:

2003г

サービス設定-国際
 
sergeev:

サービス設定-国際

はい、わかりました、わかりました。ありがとうございます。そこも変更した。