//+------------------------------------------------------------------+//| Функция включает/выключает режим отображения ценового графика с |//| отступом от правого края. |//+------------------------------------------------------------------+bool ChartShiftSet(constbool value,constlong chart_ID=0)
{
//--- сбросим значение ошибкиResetLastError();
//--- установим значение свойстваif(!ChartSetInteger(chart_ID,CHART_SHIFT,0,value))
{
//--- выведем сообщение об ошибке в журнал "Эксперты"Print(__FUNCTION__+", Error Code = ",GetLastError());
return(false);
}
//--- успешное выполнениеreturn(true);
}
Примеры работы с графиком - Константы графиков - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
//+------------------------------------------------------------------+ //| Функция устанавливает размер отступа нулевого бара от правого | //| края графика в процентах (от 10% до 50%). Для включения режима | //| отступа, нужно установить значение свойства CHART_SHIFT равным | //| true. | //+------------------------------------------------------------------+ bool ChartShiftSizeSet(constdouble value,constlong chart_ID=0)
{
//--- сбросим значение ошибки ResetLastError();
//--- установим значение свойства if(!ChartSetDouble(chart_ID,CHART_SHIFT_SIZE,value))
{
//--- выведем сообщение об ошибке в журнал "Эксперты" Print(__FUNCTION__+", Error Code = ",GetLastError());
return(false);
}
//--- успешное выполнение return(true);
}
ヒントを教えてください。
mql4では、始値のMAに基づくインジケータがあり、それは現在のバーでの再描画を回避することができました。すべてを鮮明に映し出す。
mql5では、同じインジケータがint startを介して動作せず、int OnCalculateを介して動作します。再計算と再描画を繰り返し、一瞬画像が消え、2つのMA間の距離が設定されているものの、2つのMAが交差する境界の状況により異なる値を持つ場合があります。0番目の値ではなく、1番目の値をMAバッファから取ろうと思いましたがうまくいかず、また新しいバーが来る前にこの関数をスキップしようと思いましたがこれもうまくいきませんでした(何も表示させないようにしたこともあります)。この状況を打破するにはどうしたらいいのか。
チャートを右から左へ反転させると、インジケーターも常に再計算されてちらつく。
ヒントを教えてください。
mql4では、始値のMAに基づくインジケータがあり、現在のバーでの再定格を回避することができました。すべてを鮮明に映し出す。
mql5では、同じインジケータがint startを介して動作せず、int OnCalculateを介して動作します。再計算、再描画を繰り返し、一瞬画像が消え、2つのMAが交差する境目のため値が異なる場合があり、2つのMA間の距離を設定しているにもかかわらず、うまくいきません。0番目の値ではなく、1番目の値をMAバッファから取ろうと思いましたがうまくいかず、また、新しいバーが来る前にこの関数をスキップしようと思いましたがこれもうまくいきませんでした(何も表示させないようにしたこともあります)。この状況を打破するにはどうしたらいいのか。
チャートを右から左へ反転させると、インジケーターも常に再計算されてちらつく。
ここで質問 してください。彼らは必ず助けてくれます。
ヒントを教えてください。
mql4では、始値のためのMAに基づいたインジケータがあり、それは現在のバーでの再描画を回避することができました。すべてを鮮明に映し出す。
mql5では、同じインジケータがint startを介して動作せず、int OnCalculateを介して動作します。再計算と再描画を繰り返し、一瞬画像が消え、2つのMA間の距離が設定されているものの、2つのMAが交差する境界の状況により異なる値を持つ場合があります。0番目の値ではなく、1番目の値をMAバッファから取ろうと思いましたがうまくいかず、また新しいバーが来る前にこの関数をスキップしようと思いましたがこれもうまくいきませんでした(何も表示させないようにしたこともあります)。この状況を打破するにはどうしたらいいのか。
チャートを右から左へ反転させると、インジケーターも常に再計算されてちらつく。
グラフィックにそのようなものがある
間違っていなければ、どの色でもやっているのを見たことがあります。
どうやって?
グラフィックにそのようなものがある
間違っていなければ、どの色でもやっているのを見たことがあります。
どうやって?
F8と。
しかし、これはグリッドの色でもあるので、チェックをはずします。
F8と
しかし、これはグリッドの色でもあるので、チェックをはずします。
了解です、ありがとうございます
グリッドは必要だ、分離されていないのが残念だ。
P.S. プログラム的に右端から15小節ずらすにはどうしたらいいのでしょうか?了解です、ありがとうございます
グリッドは必要だ、分割されていないのが残念だ。
P.S. プログラムで右端から15小節ずらすには?これはどうでしょう?
これはどうでしょう?
はい、でもそれはボタンを押してはいけないということです。
マーカーを手でドラッグすると、右端に到達する前にかなり休んでしまう。これは端末の制限として根本的に間違っている
ボタンを押すと、一番外側のバーが右端にくっつきそうになり、チャートの情報価値が失われてしまうのです。
この操作は、新しいバーが現れるたびに行うのではなく、バーが15~20本に達したところでボタンを押すとよいでしょう。圧縮は1回のみ。
追伸:なぜこのような制約があり、これほどまでに空白があるのか?
はい、でも、ボタンを押しまくるんです。
マーカーを手でドラッグすると、右端に到達する前に止まってしまうことがよくあるのですが、これは端末の制限として根本的に間違っています
ボタンを押すと、一番外側のバーが右端にくっつきそうになり、チャートの情報価値が失われてしまうのです。
この操作は、新しいバーが現れるたびに行うのではなく、バーが15~20本に達したところでボタンを押すとよいでしょう。圧縮は1回のみ。
比率
比率
動作しますが、手で設定できるインデントで、最低でも
ビジュアル的には、最低でも10%程度です。なぜ5%ではダメなのか