エラー、バグ、質問 - ページ 884

 
tol64:
ありがとうございます。肝に銘じておきます。多分、どなたかこの欄が埋まっているときと埋まっていないとき(私の場合のように)を教えてください。何かあれば、サービスデスクで聞いてみます。
これは、実行プラットフォーム(取引所)がお客様の注文に割り当てる識別子です。
 
Yedelkin:

1.コードを 正しく挿入してください。

2. m_periodパラメータはどのように最適化/選択されるのでしょうか?つまり、最適化におけるその価値は何なのか?

ありがとうございます、わかりました、私のミスです。
 
Rosh:
曖昧な質問には、曖昧なまましか答えられない -グラフ期間
ありがとう、わかったよ、僕のミスだ。
 

エラーに関するコメントが気になります。" 2012.11.28 09:38:18 4194304 bytes not available "

 
AndreyS:

エラーに関するコメントが気になります。" 2012.11.28 09:38:18 4194304 bytes not available "

メモリが足りない。
 
Rosh:
これは、実行プラットフォームである取引所からお客様の注文に割り当てられた識別子です。
ありがとうございます。また、外部 取引システムとはどういう意味なのか、私も誤解しているかもしれないので、明らかにしてください。
 

皆様、ご返信ありがとうございました。

type_fillingで このような不確実性を発見した: 1つのモードのみが 許可される

string symbol = "EURUSD";
int flags = SymbolInfoInteger( symbol, SYMBOL_FILLING_MODE );
//разрешен только SYMBOL_FILLING_ALL_OR_NONE
と同じように、SendOrder が正常に注文を出す。
MqlTradeRequest request;
request.type_filling = ORDER_FILLING_FOK; //соответствующий флаг разрешения 1
と同時に
request.type_filling = ORDER_FILLING_RETURN; //соответствующий флаг разрешения 0

また、発注が成功した後は、クエリで request.type_filling =ORDER_FILLING_FOK指定しても、発注したオーダーの実際のプロパティORDER_TYPE_FILLING = ORDER_FILLING_RETURN になります。

MqlTradeResult result;
OrderSelect( result.order );
int tpAfter = OrderGetInteger( ORDER_TYPE_FILLING );
//tpAfter всегда = ORDER_FILLING_RETURN

許可されたモードのリストと、発注後の実際のプロパティの間にミスマッチがあるように思われる

 

tol64

Rosh : これは、実行プラットフォーム(取引所)がお客様の注文に割り当てる識別子です。

また、外部 取引システムとはどういう意味なのか、私も誤解しているかもしれないので、明らかにしてください。

とおっしゃいましたが

tol64を お持ちとのことですが。

イエデルキン 取引所 取引における逆指値注文の運用を 確認されましたか?

はい、よく確認したところ、注文をトリガーした時点でこのフィールドには何も表示されませんでした。

では、為替 取引の際にチェックされたのか、されなかったのか。

 
Rosh:
メモリが足りない。

ありがとうございます。

状況を分析するために、以下のコードを役立ててください。


void CStrategyMA::FitnessFunction(int chromos)
{
  double res=0.0;
  
  // Выбор символа (m_strategy_symbol) из масива используемых символов (m_name_symbols[]) количаством (m_count_symbols)
  // Пример: m_count_symbols = 1; m_name_symbols[0] = "EURUSD.e";
  m_strategy_symbol = m_name_symbols[(int)MathRound(Colony[1][chromos]*(m_count_symbols-1))];
  
  // Выбор периода из масива по индексу (от PERIOD_M5 (индекс - 5) до PERIOD_D1 (индекс - 19))
  // Для наглядности:
  // ENUM_TIMEFRAMES PERIOD_INDEX [22] = {PERIOD_CURRENT,
  //                                      PERIOD_M1, PERIOD_M2,PERIOD_M3,PERIOD_M4,PERIOD_M5,PERIOD_M6,PERIOD_M10,PERIOD_M12,PERIOD_M15,PERIOD_M20,
  //                                      PERIOD_M30,PERIOD_H1,PERIOD_H2,PERIOD_H3,PERIOD_H4,PERIOD_H6,PERIOD_H8, PERIOD_H12,PERIOD_D1, PERIOD_W1,
  //                                      PERIOD_MN1};
  m_period = PERIOD_INDEX[(int)(MathRound(Colony[2][chromos]*5)+14)];
  
  // Освобождаю дескриптор загруженого ранее индикатора
  IndicatorRelease(m_handle);
  // Создаю новый индикатор с периодом - (int)(MathRound(Colony[3][chromos]*100)+1)
  // от 1 до 100
  m_handle=iMA(m_strategy_symbol,(ENUM_TIMEFRAMES)m_period,(int)(MathRound(Colony[3][chromos]*100)+1),0,MODE_EMA,PRICE_CLOSE);
  // Без использования Sleep(1000); - генерируется последующая ошибка при использовании в коде ф-ции: CopyBuffer
  // "ошибка доступа к историческим даным", хоть дескриптор и создан!?!?!?
  Sleep(1000);
  if(m_handle<0)
  {
    Alert("Ошибка при создании индикатора MA - номер ошибки: ",GetLastError()," ",m_strategy_symbol," ",m_period);
  } else
  {
    // Аналитический процес
    res = HistoryCheckTradeConditions();
  }
  AmountStartsFF++;
  Colony[0][chromos]=res;
}

 

この機能を使うと、「2012.11.28 09:58:32 4194304 bytes not available」というエラーが出るので、スワップファイルを10GBtに増やしたのが理解の助けになりました。

また、Sleep(1000)に戸惑いを感じています。

 
A100: Type_filling との間に矛盾があります SendOrder は、stack と同じようにオーダーを配置しますが、1つのモードしか 許可されません。

また、発注に成功すると、リクエストに request.type_filling =ORDER_FILLING_FOK指定されて いても、発注されたオーダーの実際のプロパティORDER_TYPE_FILLING = ORDER_FILLING_RETURN が常に 指定されます。

許可されたモードのリストと、注文後の実際のプロパティに矛盾があるように思うのですが......。

同様の問題については、すでにこちらで対処を試みています。https://www.mql5.com/ru/forum/2248/page5#comment_197730(2回連続の投稿です)。その後、ヘルプ資料にも変更がありました。でも、質問自体に興味がなくなったので、具体的に何が変わったのか、それはわかりません。端末の取扱説明書をもう一度見てください。これらのモードの説明もそちらで更新されているかと思います。
OrderSend() Вопросы
OrderSend() Вопросы
  • www.mql5.com
дожидается ли получения request], или после отправки торгового запроса на сервер сразу же переходит к следующему оператору (блоку)?