カスタムシンボル。エラー、バグ、質問、提案。 - ページ 14

 

バグ21。


2085

サーバー再接続後、作成されたすべてのカスタムシンボルは、マーケット概要そのものに追加されます。
土日で市場が休 みの時は良いですね。
サーバーが時々再接続される、または接続インストールの瞬間にターミナルが再起動された後。
標準シンボルの チャートは再起動し、1ティックにすることができます。この時点で、作成されたすべてのカスタムシンボルは、それ自体で市場の概要に追加されます。

 

提案します。

シンボルプロパティにSYMBOL_VOLUME_INITIAL 識別子を追加し、その値を仕様書に表示してください。
そして、その値を呼び出すための適切な識別子を追加する。

CustomSymbolSetDouble(SName, SYMBOL_VOLUME_INITIAL, 0.00000000);           Результат: Initial volume == 0.00000000
 
Roman:

バグ20。

2085
カスタムキャラクタープロパティの設定に誤りがある。



再生用のコードはどこにあるのですか?

 
Slava:

再生用のコードはどこにあるのですか?

バグ20のメッセージの中に、識別子が記載されています。メッセージに表示されていないのでしょうか?

 

バグ22。

1ティックのロールオーバーで、その価格は10倍に変化します。

#define  PRINT(A) Print(#A + " = " + (string)(A))

void OnStart()
{
  MathSrand((int)TimeLocal());  
  const string Name = "CUSTOM_" + _Symbol + (string)MathRand(); // Создали символ    
  
  PRINT(CustomSymbolCreate(Name)); // Создали символ по-умолчанию.
  
  // Если удалить любую из двух строк ниже, то результат будет нормальным.
  PRINT(CustomTicksDelete(Name, 0, LONG_MAX)); // Удалили тиковую историю (ее на самом деле нет).
  PRINT(CustomSymbolDelete(Name)); // Удалили символ
  
  PRINT(CustomSymbolCreate(Name, NULL, _Symbol)); // Создали символ на основе главного.
    
  PRINT(SymbolSelect(Name, true)); // Добавили в Обзор рынка.

  MqlTick Tick[1];
  PRINT(SymbolInfoTick(_Symbol, Tick[0])); // Взяли свежий тик для проброса.
  ArrayPrint(Tick); // Показали тик.
  
  PRINT(CustomTicksAdd(Name, Tick)); // Пробросили тик.
  
  MqlTick NewTicks[];
  PRINT(CopyTicksRange(Name, NewTicks));  
  ArrayPrint(NewTicks); // Показали, что на самом деле пробросили.
}


結果

CustomSymbolCreate(Name) = true
CustomTicksDelete(Name,0,LONG_MAX) = 0
CustomSymbolDelete(Name) = true
CustomSymbolCreate(Name,NULL,_Symbol) = true
SymbolSelect(Name,true) = true
SymbolInfoTick(_Symbol,Tick[0]) = true
                 [time]   [bid]   [ask] [last] [volume]    [time_msc] [flags] [volume_real]
[0] 2019.06.17 02:08:35 1.12152 1.12157 0.0000        0 1560737315178       2       0.00000
CustomTicksAdd(Name,Tick) = 1
CopyTicksRange(Name,NewTicks) = 1
                 [time]    [bid]    [ask] [last] [volume]    [time_msc] [flags] [volume_real]
[0] 2019.06.17 02:08:35 11.21520 11.21570 0.0000        0 1560737315178       6       0.00000
 

こんにちは

データ解析とグラフ作成に必要です。

シンボルを作成 し、csvからバーをロードすると、インスタのディレクトリに厚いデータファイルが表示されます。

シンボル起動、マーケットウォッチ中

チャートを表示しない -「アップデート待ち」。


何か見逃したかな?

mt4とmt5の両方で試しましたが、すべて同じです。

デモチャート - ランジャンプ

 
Roman:

バグ20のメッセージの中に、識別子が記載されています。メッセージに表示されていないのでしょうか?

もう一度。再現性のあるコードはどこですか?

識別子が表示されます。そこで質問なのですが、ORDER_FILLING_XXXとどう関係があるのでしょうか?ドキュメントをよくお読みになりましたか?

 
Slava:

もう1度再現性のあるコードはどこですか?

識別子が表示されます。そこで質問なのですが、ORDER_FILLING_XXXとどう関係があるのでしょうか?ドキュメントをよくお読みになりましたか?

SYMBOL_FILLING_MODE
に充填モードを設定したため。 しかし、識別子そのものでは、出力結果にずれが生じている。
その結果をご覧ください。
FOK は None 仕様に設定
IOC は FOK 仕様に設定
RETURN は IOC 仕様に設定

ORDER_FILLING_FOK     Результат: Filling == None
или
ORDER_FILLING_IOC     Результат: Filling == Fill or Kill
или
ORDER_FILLING_RETURN  Результат: Filling == Immediate or Cancel

また、SYMBOL_FILLING_XXXの ように、他のENUMの識別子を使いたい場合は

このENUMには2つの識別子しかない
SYMBOL_FILLING_FOK
SYMBOL_FILLING_IOC

そして交換モードには、識別子はない!
識別子やその値がない状態で、どのように交換モードを設定するのですか?
自分でドキュメントを見てください。

SYMBOL_FILLING_RETURN
識別子が ないことを確認する。

 
Roman:

識別子やその値なしに、どのように交換モードを設定するのですか?

トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム

ライブラリ:シンボル

fxsaber さん 2018.04.06 09:21

Symb.SetProperty(SYMBOL_TRADE_EXEMODE, SYMBOL_TRADE_EXECUTION_EXCHANGE);
Symb.SetProperty(SYMBOL_TRADE_CALC_MODE, SYMBOL_CALC_MODE_EXCH_FUTURES);

開発者は別として、あなたの書き込みも全く意味不明です。問題を建設的に報告 する方法をご覧ください。

 
何がはっきりしないのか? 私のバグレポート#20でIDの設定と矛盾の原因を指摘しました。
SYMBOL_TRADE_EXEMODE
SYMBOL_TRADE_CALC_MODE
これらは全く別のモードなので問題とは関係がありません。

これはより明確であるべきです。

void OnStart()
{
   string SName = "SYMBOL";
   
   if(CustomSymbolCreate(SName))
      CustomSymbolSetInteger(SName, SYMBOL_FILLING_MODE, ORDER_FILLING_RETURN);
      //CustomSymbolSetInteger(SName, SYMBOL_FILLING_MODE, ORDER_FILLING_FOK);  
      //CustomSymbolSetInteger(SName, SYMBOL_FILLING_MODE, ORDER_FILLING_IOC);
   
}

ENUMSYMBOL_FILLING_XXX
から別の識別子を使用したい場合、SYMBOL_FILLING_RETURN識別子はありません!

ファイル:
理由: