カスタムシンボル。エラー、バグ、質問、提案。 - ページ 31 1...2425262728293031323334 新しいコメント fxsaber 2021.04.20 11:21 #301 100個のカスタムキャラクターを 誰かと共有できるような仕組みはないのでしょうか? 履歴の移行は簡単で、Customフォルダをコピーするだけです。しかし、キャラクターの仕様が不明です。 Andrey Khatimlianskii 2021.04.22 20:55 #302 fxsaber:100個のカスタムキャラクターを 誰かと共有できるような仕組みはないのでしょうか?履歴の移行は簡単で、Customフォルダをコピーするだけです。しかし、キャラクターのスペックは不明です。 アップロード/ダウンロードするためのカスタムスクリプトを書かなければならない。私なら通常の輸出入を待つことはしない。 fxsaber 2021.04.22 21:09 #303 Andrey Khatimlianskii:自作のアップロード/ダウンロード用スクリプトを呼び出す。通常のエクスポート/インポートスクリプトを待つことはないでしょう。 一見、簡単そうに見えても、かなりの努力が必要なのです。シンボルのプロパティを 設定する正しい順序を知る必要があります。さらに、クォート/トレーディングセッションのトラブルが発生する。 すなわち、デバッグに手間がかかる、デバッグができない。 jaffer wilson 2021.06.26 11:24 #304 新しいチャートにカスタムマークを記入するのに苦労しています。時間を変えて新しいシンボルチャートを作ろうとしています。 しかし、通貨記号のマークを埋めるのにいつも苦労しています。 以下はそのコードです。 //+------------------------------------------------------------------+ //| Forward_Ticks_Sample.mq5 | //| | //| | //+------------------------------------------------------------------+ #property indicator_chart_window #property indicator_buffers 1 #property indicator_plots 0 #include "Includes//Symbol.mqh" string g[]; int total_len_history = 0, initialization_flag, symbol_history_wiped_clean, len_sym = StringSplit(Symbol(),'_',g); string Orig_Symbol_Name = g[0], symbol_custom=StringFormat("%s_frd",Orig_Symbol_Name); datetime Let_start = 0; bool alert_once, commentplaced; long time_msc = long(Let_start)*1000, tick_chart_id; ulong LastTime_Added; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { ResetLastError(); string name = MQLInfoString(MQL_PROGRAM_NAME); IndicatorSetString(INDICATOR_SHORTNAME, name); ResetLastError(); Close_All_Symbols_Charts(symbol_custom); MqlTick tick; while(SymbolInfoTick(Orig_Symbol_Name, tick) == false) { Sleep(1000); } alert_once = false; tick_chart_id = 0; symbol_history_wiped_clean = Remove_Symbol_From_MarketWatch_Delete_History(symbol_custom); alert_once = true; initialization_flag = INIT_FAILED; return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, const int prev_calculated, const int begin, const double &price[]) { ResetLastError(); MqlTick tick, ticks[]; if(symbol_history_wiped_clean == false) { Close_All_Symbols_Charts(symbol_custom); symbol_history_wiped_clean = Remove_Symbol_From_MarketWatch_Delete_History(symbol_custom); if(symbol_history_wiped_clean == false) return 0; } if(symbol_history_wiped_clean == true && initialization_flag == INIT_FAILED ) { Alert_me(); if(Fill_ReFill_Custom_Symbol(symbol_custom) == -1) return 0; initialization_flag = INIT_SUCCEEDED; Print("History Filled Successfully."); Comment(""); return rates_total; } SymbolInfoTick(Orig_Symbol_Name, tick); //if(tick.time_msc != LastTime_Added) { ulong tick_count = tick.time_msc - LastTime_Added; uint get_count = uint(MathAbs(double(tick_count))); int len = CopyTicks(Orig_Symbol_Name, ticks, COPY_TICKS_ALL, LastTime_Added, get_count); if(len <= 2) return rates_total; ulong last_time = ticks[len - 1].time_msc; if(len > 5) { commentplaced = true; ChartSetString(tick_chart_id, CHART_COMMENT, "Please wait while we retrieve ticks........"); } int filled = Tick_Filling_Logic(ticks, len); if(commentplaced == true && filled > 0) { if(last_time + 60 > ulong(TimeCurrent())) { ChartSetString(tick_chart_id, CHART_COMMENT, ""); Comment(""); commentplaced = false; } } if(tick_chart_id <= 0) { tick_chart_id = ChartOpen(symbol_custom, PERIOD_M1); } } return rates_total; } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void Close_All_Symbols_Charts(string local_symbol) { tick_chart_id = 0; ResetLastError(); for(long chartid = ChartFirst(); chartid != -1 && !IsStopped(); chartid = ChartNext(chartid)) { string name = ChartSymbol(chartid); if(StringFind(name, local_symbol) < 0) continue; if(!ChartClose(chartid)) Print("Cannot close Chart Symbol: ", name, " Period: ", EnumToString(ChartPeriod(chartid))); } Sleep(1000); } //+------------------------------------------------------------------+ bool Remove_Symbol_From_MarketWatch_Delete_History(string local_symbol) { ResetLastError(); Sleep(10); const SYMBOL SYMB(local_symbol); bool custom = true; bool status = SYMB.IsExist();//SymbolExist(local_symbol, custom); if(status == false) return true; if(SYMB.Off() == false) { Print("Cannot UnSelect the Symbol ", local_symbol, " because: ", GetLastError()); Sleep(5000); } Print(__FUNCTION__, " : Error = ", GetLastError()); if(CustomTicksDelete(local_symbol, 0, LONG_MAX) <= 0) Print("Cannot Delete Custom Ticks: ", GetLastError()); return true; } //+------------------------------------------------------------------+ int Fill_ReFill_Custom_Symbol(string local_symbol) { ResetLastError(); total_len_history = 0; alert_once = false; commentplaced = false; LastTime_Added = 0; Comment("Refreshing the Tick Chart. Please Wait."); MqlDateTime str; TimeToStruct(iTime(Orig_Symbol_Name, 0, 0) - 30 * 86400, str); Comment(""); datetime start_date = datetime(StringFormat("%d.%d.01 00:00:00",str.year,str.mon)); const SYMBOL SYMB(local_symbol); SYMB.CloneProperties(Orig_Symbol_Name); MqlTick ticks_add[]; ulong time_start = GetMicrosecondCount(); ResetLastError(); if(LastTime_Added == 0) LastTime_Added = ulong(start_date) * 1000; int len = CopyTicksRange(Orig_Symbol_Name, ticks_add, COPY_TICKS_ALL, LastTime_Added, ulong(TimeCurrent()) * 1000 ); if(len<=0) { string error; if(GetLastError() == 4401) error = "ERR_HISTORY_NOT_FOUND"; else error = string(GetLastError()); Print("------------------------------------------------------------------"); Print("History Tick Length: ", len, " Error: ", error); Print("------------------------------------------------------------------"); Sleep(5000); // Print("Waited for 10000 milliseconds. Still no history found."); return -1; } Let_start = 0; time_msc = long(Let_start)*1000; int total = Tick_Filling_Logic(ticks_add, len); if(total <= 0) { SYMB.Off(); CustomSymbolDelete(local_symbol); return -1; } if(GetLastError() == 4403) { Sleep(2000); Print("History Failed to Retrieve."); len = -1; return len; } Print("Gathering Ticks from : ", iTime(Orig_Symbol_Name, 0, 0) - 30 * 86400, " To: ", TimeCurrent()); Print("Symbol Working :",SYMB.On()); Print("Ticks: ",len); Print("Started : ",ticks_add[0].time," Ended : ",ticks_add[len-1].time); Print("Error Found: ",GetLastError()); Print("Ticks Filled: ", total); Print("Time Required for completion: ",(GetMicrosecondCount()-time_start)/1000000); Print("Started : ",ticks_add[0].time," Ended : ",ticks_add[len-1].time); Print("History Loaded!!!!"); Print(Let_start); Comment(""); ChartSetString(tick_chart_id, CHART_COMMENT, ""); return len; } //+------------------------------------------------------------------+ void OnDeinit(const int r) { EventKillTimer(); } //+------------------------------------------------------------------+ void Alert_me() { if(alert_once == false) return; Alert(symbol_custom, " : Please Wait for Chart Refresh"); } //+------------------------------------------------------------------+ int Tick_Filling_Logic(MqlTick& ticks_add[], int len) { ResetLastError(); long last = ticks_add[len - 2].time_msc, time_msc_local = time_msc; datetime Let_start_local = Let_start; int total_len_history_local = total_len_history; for(int i=0; i < len - 1 && !IsStopped(); i++) { if(i == 0 || (i > 0 && iBarShift(Orig_Symbol_Name, PERIOD_M1, ticks_add[i].time) > iBarShift(Orig_Symbol_Name, PERIOD_M1, ticks_add[i + 1].time))) { Let_start_local = datetime(TimeToString(Let_start_local, TIME_DATE|TIME_MINUTES)) + 60; MqlDateTime tt1; TimeToStruct(Let_start_local, tt1); if(tt1.day_of_week == 0) { Let_start_local = Let_start_local + 86400; } else if(tt1.day_of_week == 6) { Let_start_local = Let_start_local + 86400*2; } time_msc_local = long(Let_start_local)*1000; } else { if(ticks_add[i].time == ticks_add[i + 1].time) time_msc_local = time_msc_local + 1; else { Let_start_local = Let_start_local + 1; time_msc_local = long(Let_start_local)*1000; } } ticks_add[i].time = Let_start_local; ticks_add[i].time_msc = time_msc_local; total_len_history_local = total_len_history_local + 1; } int total = CustomTicksAdd(symbol_custom, ticks_add); if(total <= 0) { Print("Tick Not added : ", GetLastError()); total = CustomTicksReplace(symbol_custom, ticks_add[0].time_msc, ticks_add[len - 1].time_msc, ticks_add, len); } if(total == len) { LastTime_Added = last; Let_start = Let_start_local; time_msc = time_msc_local; total_len_history = total_len_history_local; } else { Print("Tick not replaced : ", GetLastError(), " ", len, " = len but filled = ", total, " in ", symbol_custom); } return total; } //+------------------------------------------------------------------+ 依存関係ファイルを添付します。 このエラーが発生します。 問題を発見し、正しく動作させるために具体的に何をすればよいのか、ご教授ください。 エラーは、構造上のチェックボックスを埋めていないことを意味します。しかし、そうであるならば、以前のキャンドルはどうして完璧に見えたのでしょうか? п ファイル: Symbol.mqh 7 kb jaffer wilson 2021.06.27 08:51 #305 jaffer wilson :新しいチャートにカスタムマークを記入するのに苦労しています。時間を変えて新しいシンボルチャートを作ろうとしています。しかし、通貨記号のマークを埋めるのにいつも苦労しています。以下はそのコードです。依存関係ファイルを添付します。このエラーが発生します。問題を発見し、正しく動作させるために具体的に何をすればよいのか、ご教授ください。エラーは、構造上のチェックボックスを埋めていないことを意味します。しかし、そうであるならば、以前のキャンドルはどうして完璧に見えたのでしょうか?п カスタムシンボルコードについて教えてください。これに引っかかって、クライアントが怒っているんです。 jaffer wilson 2021.07.01 18:35 #306 何かお手伝いできることがあれば、https://www.mql5.com/ru/forum/372451。 Имеется проблема обновления OHLC в CustomSymbol 2021.07.01www.mql5.com Я пробовал следующий код: Но всегда есть обновление, написанное на диаграмме. Плюс название символа другое в окне спецификации... Sunriser 2021.07.14 11:04 #307 本日ターミナルを開き、アップデート2994をダウンロードし、MT5を再起動しました。多くのカスタムシンボルを含め、すべてのシンボルが消えていますね。 basesCustomフォルダに、カスタムシンボル用の.hc、.hcc、.tkcデータファイルを含むhistoryフォルダとticksフォルダが残っていますが、今後どのように使用すればよいですか? 警告!カスタムシンボルやインポート履歴などの再作成は本当に必要なのでしょうか? fxsaber 2021.07.14 11:07 #308 Sunriser:本日ターミナルを開き、アップデート2994をダウンロードし、MT5を再起動しました。多くのカスタムシンボルを含め、すべてのシンボルが消えていますね。basesCustomフォルダに、カスタムシンボル用の.hc、.hcc、.tkcデータファイルが入ったhistoryフォルダとticksフォルダが残っていますが、これからどのように使えばいいでしょうか?まいったなー。カスタムシンボルの作成、履歴のインポートなど、本当にやり直す必要があるのでしょうか? Customフォルダを別の場所に移動して、シンボルを再作成してみてはいかがでしょうか。スペック、履歴はありません。その後、Terminalを終了し、CustomフォルダをコピーバックしてTerminalを起動 します。歴史は回復するはずだ。 端末側のjson文字設定のバックアップを呼び出す。誤って削除してしまうなどの弊害 - バックアップから復元する。 Sunriser 2021.07.14 12:42 #309 fxsaber:Customフォルダを別の場所に移動して、シンボルを再作成してみてください - 仕様、履歴はありません。その後、Terminalを終了し、CustomフォルダをコピーバックしてTerminalを起動 します。歴史は回復するはずだ。端末側のjson文字設定のバックアップを呼び出す。誤って削除してしまうなど、厄介なことに-バックアップからの復元。 うまくいった。時間の節約になりました!ありがとうございます。 Alain Verleyen 2021.07.25 05:09 #310 トレーディング、自動売買システム、ストラテジーテストに関するフォーラム カスタムSybmol: ERROR 5308 ダークライド3r、2021.06.24 09:55 カスタムシンボルにSYMBOL_VOLUME_MINを設定しようとしていますが、ERROR 5308が返されます。 他のパラメータは問題なく動作することを完全に確認しましたが、SYMBOL_VOLUME_MINだけは、値をdoubleに設定したところ、以下のような結果が返ってきました。 err_custom_symbol_parameter_error 5308 これはシステムのエラーだと思うので、修正するために報告する必要があります。 この 方法でシンボルを作成し、カスタムシンボルにプロパティ:SYMBOL_VOLUME_MINを設定しています。 (SetProperty(SName, SYMBOL_VOLUME_MIN , 0.001 , "" ) 1...2425262728293031323334 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
100個のカスタムキャラクターを 誰かと共有できるような仕組みはないのでしょうか?
履歴の移行は簡単で、Customフォルダをコピーするだけです。しかし、キャラクターの仕様が不明です。
100個のカスタムキャラクターを 誰かと共有できるような仕組みはないのでしょうか?
履歴の移行は簡単で、Customフォルダをコピーするだけです。しかし、キャラクターのスペックは不明です。
アップロード/ダウンロードするためのカスタムスクリプトを書かなければならない。私なら通常の輸出入を待つことはしない。
自作のアップロード/ダウンロード用スクリプトを呼び出す。通常のエクスポート/インポートスクリプトを待つことはないでしょう。
一見、簡単そうに見えても、かなりの努力が必要なのです。シンボルのプロパティを 設定する正しい順序を知る必要があります。さらに、クォート/トレーディングセッションのトラブルが発生する。
すなわち、デバッグに手間がかかる、デバッグができない。
新しいチャートにカスタムマークを記入するのに苦労しています。時間を変えて新しいシンボルチャートを作ろうとしています。
しかし、通貨記号のマークを埋めるのにいつも苦労しています。
以下はそのコードです。
依存関係ファイルを添付します。
このエラーが発生します。
問題を発見し、正しく動作させるために具体的に何をすればよいのか、ご教授ください。
エラーは、構造上のチェックボックスを埋めていないことを意味します。しかし、そうであるならば、以前のキャンドルはどうして完璧に見えたのでしょうか?
п
新しいチャートにカスタムマークを記入するのに苦労しています。時間を変えて新しいシンボルチャートを作ろうとしています。
しかし、通貨記号のマークを埋めるのにいつも苦労しています。
以下はそのコードです。
依存関係ファイルを添付します。
このエラーが発生します。
問題を発見し、正しく動作させるために具体的に何をすればよいのか、ご教授ください。
エラーは、構造上のチェックボックスを埋めていないことを意味します。しかし、そうであるならば、以前のキャンドルはどうして完璧に見えたのでしょうか?
п
カスタムシンボルコードについて教えてください。これに引っかかって、クライアントが怒っているんです。
本日ターミナルを開き、アップデート2994をダウンロードし、MT5を再起動しました。多くのカスタムシンボルを含め、すべてのシンボルが消えていますね。
basesCustomフォルダに、カスタムシンボル用の.hc、.hcc、.tkcデータファイルを含むhistoryフォルダとticksフォルダが残っていますが、今後どのように使用すればよいですか?
警告!カスタムシンボルやインポート履歴などの再作成は本当に必要なのでしょうか?
本日ターミナルを開き、アップデート2994をダウンロードし、MT5を再起動しました。多くのカスタムシンボルを含め、すべてのシンボルが消えていますね。
basesCustomフォルダに、カスタムシンボル用の.hc、.hcc、.tkcデータファイルが入ったhistoryフォルダとticksフォルダが残っていますが、これからどのように使えばいいでしょうか?
まいったなー。カスタムシンボルの作成、履歴のインポートなど、本当にやり直す必要があるのでしょうか?
Customフォルダを別の場所に移動して、シンボルを再作成してみてはいかがでしょうか。スペック、履歴はありません。その後、Terminalを終了し、CustomフォルダをコピーバックしてTerminalを起動 します。歴史は回復するはずだ。
端末側のjson文字設定のバックアップを呼び出す。誤って削除してしまうなどの弊害 - バックアップから復元する。
Customフォルダを別の場所に移動して、シンボルを再作成してみてください - 仕様、履歴はありません。その後、Terminalを終了し、CustomフォルダをコピーバックしてTerminalを起動 します。歴史は回復するはずだ。
端末側のjson文字設定のバックアップを呼び出す。誤って削除してしまうなど、厄介なことに-バックアップからの復元。
うまくいった。時間の節約になりました!ありがとうございます。
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
カスタムSybmol: ERROR 5308
ダークライド3r、2021.06.24 09:55
カスタムシンボルにSYMBOL_VOLUME_MINを設定しようとしていますが、ERROR 5308が返されます。
他のパラメータは問題なく動作することを完全に確認しましたが、SYMBOL_VOLUME_MINだけは、値をdoubleに設定したところ、以下のような結果が返ってきました。
err_custom_symbol_parameter_error 5308
これはシステムのエラーだと思うので、修正するために報告する必要があります。
この 方法でシンボルを作成し、カスタムシンボルにプロパティ:SYMBOL_VOLUME_MINを設定しています。