MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 308

 
MosheDayan:

友よ、この状況を正しく打開するためには...。このインジケータは、CSVから2本の水平線を 描きます(赤:その日の始まりから終わりまで 青:過去数日間、異なる価格水準でやってきたビーム)。しかし、これらの水準が同じ価値・価格である日もあるのです。この場合、線が重なった時にRay(Blue)が表示され、Redの線はチャート上では見えないが物理的には存在する・・・つまり透明であるようにするには、どうすればよいのでしょうか?

これで - Draw_Level("Red", red, DRAW_NONE, STYLE_SOLID,0); は線の描画を停止しますが、レイはその下からも見えません。ありがとうございます。

オブジェクトの作成順序に注意する。また、Draw_Level()とは何ですか? 誰も知らないのに、なぜカスタム関数に言及するのですか?

 
Artyom Trishkin:

こんにちは。ご自身では、具体的にどのようなことを心がけていたのでしょうか?添付の2つのコードしか見えません。全部やってくれる人が必要なら、それこそフリーランスが いい。

そして、あなた自身が努力しているのであれば、どこがどうわからないのか、具体的に示してください。

こんにちは、アルテムさん! 正解です。はい、コードと一緒にWordovanファイルを添付します。借用したアルゴリズムから私のコードに追加したものは、赤でマークしてあります。コードの仕組みが完全に理解できているわけではないので、まだ理解していないところは何とも言えません。でも、もしかしたら、あなたのアドバイスで正しい方向へ導いてくれるかもしれませんね。よろしくお願いします。

 

ごきげんよう。
Expert Advisorが装着されているチャートとは別のシンボルで注文を出す予定です。問題は、Bidの正しさを事前に確認する必要があるのか、またその方法は何かということです。

double Bid0= MarketInfo(OtherSymbol0,MODE_BID);
OrderSend(OtherSymbol0,OP_SELL,1,Bid0,3,stoploss,takeprofit,"My order",16384,0,clrGreen); 
 

こんにちは。

今月の最初の水曜日から数えて、最初の金曜日の23:59という時刻を、どのようにコードに書けばよいのでしょうか。

ありがとうございます。

 
MosheDayan:

こんにちは。

今月の最初の水曜日から数えて、最初の金曜日の23:59という時刻を、どのようにコードに書けばよいのでしょうか。

ありがとうございます。

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   int countWedn=0;
   int countFrid=0;
   if(TimeDayOfWeek(TimeCurrent())==5 && Hour()==23 && Minute()==59)
     {
      countWedn=0;
      countFrid=0;
      for(int i=0; i<=Day(); i++)
        {
         if(TimeMonth(iTime(Symbol(),PERIOD_D1,i))==TimeMonth(TimeCurrent()))
           {
            if(TimeDayOfWeek(iTime(Symbol(),PERIOD_D1,i))==3)countWedn++;
            if(TimeDayOfWeek(iTime(Symbol(),PERIOD_D1,i))==5)countFrid++;
           }
        }
     }
   if(countWedn==1 && countFrid==1)Print(" 23:59 первой пятницы месяца после первой среды этого месяца ");
  }
//+------------------------------------------------------------------+
 
Artyom Trishkin:

できます。そして、その思考の方向性は正しいのです。どのようにパラメータを取ろうとしたのか、見せてもらえますか?


把握しました。グラフィカルオブジェクトを対応するクラスに「バインド」する必要があります。

#include <ChartObjectsChartObject.mqh>.

void OnStart()

{

CChartObject オブジェクト。

文字列 objName = "";

二重価格 = 0;

datetime dt;

int NumTriangles = ObjectsTotal(ChartID(),0,OBJ_TRIANGLE);

for (int j=0;j<NumTriangles;j++){.

objName = ObjectName(ChartID(),j);

object.Attach(ChartID(),objName,0,3);

for (int i=0;i<object.NumPoints();i++){.

価格 = object.Price(i)。

dt = object.Time(i)。

Print("Pivot dot - ",IntegerToString(i)," Time = ",TimeToString(dt)," Price = ",DoubleToStr(price,4)")

}

object.Detach()を実行します。

}

 

皆さん、こんにちは。

そんな疑問がある、そんなブロックがある。

opf_all=0;
  for(int is=OrdersHistoryTotal(); is>=0; is--)
   {
    if(OrderSelect(is, SELECT_BY_POS, MODE_HISTORY) && OrderSymbol()==Symbol() && OrderMagicNumber()==MN)
     {
      opf_all=opf_all+OrderProfit()+OrderCommission()+OrderSwap();
     }
   }

変数opf_allは、全期間の利益の合計を出力する必要があります。しかし、ターミナルのアカウント履歴タブでcurrent dayパラメータを選択すると、このモジュールは結果を表示します。

のみで、期間全体を選択すると、全期間を表示します。これではいけないと思います。アカウント履歴の間隔に関係なく

の場合、モジュールには全期間の利益の合計が表示されるはずです。もしかして、私の理解力が足りないのでしょうか?

この問題はどうにか解決しているのでしょうか?

 
Valerius:

皆さん、こんにちは。

そんな疑問がある、そんなブロックがある。

opf_all=0;
  for(int is=OrdersHistoryTotal(); is>=0; is--)
   {
    if(OrderSelect(is, SELECT_BY_POS, MODE_HISTORY) && OrderSymbol()==Symbol() && OrderMagicNumber()==MN)
     {
      opf_all=opf_all+OrderProfit()+OrderCommission()+OrderSwap();
     }
   }

変数opf_allは、全期間の利益の合計を出力する必要があります。しかし、ターミナルのアカウント履歴タブでcurrent dayパラメータを選択すると、このモジュールは結果を表示します。

のみで、期間全体を選択すると、全期間を表示します。これではいけないと思います。アカウント履歴で選択された間隔に関係なく

の場合、モジュールには全期間の利益の合計が表示されるはずです。もしかしたら、私が何か理解していないのかもしれません。

この問題はどうにか解決しているのでしょうか?

いいえ、「アカウント履歴」タブで計算された履歴のサイズを選択する以外に解決することはできません

そして、SRCボタンを使ってコードを貼り付けて ください - メッセージの書式設定メニューのテキスト入力フィールドのすぐ上にあります。あなたの読めない「甘え」を正しく挿入しました。

 
Artyom Trishkin:

いいえ、アカウント履歴タブで計算された履歴のサイズを選択する以外には解決していません

そして、SRCボタンを使ってコードを貼り付けて ください。SRCボタンは、投稿フォーマットメニューのテキスト入力フィールドのすぐ上にあります。あなたの読めない「甘え」を正しく貼り付けました。

感謝とお詫びを込めて・・・。

 

こんにちは。チャート上にボタンが あります https://www.mql5.com/ru/code/19049 そして、それはウェブサイトを開きます。私はこのボタンからスクリプトを有効にすることができる必要があります。

Link
Link
  • 投票: 11
  • 2017.09.01
  • Iurii Tokman
  • www.mql5.com
Индикатор создает графическую кнопку, при нажатии на которую открывается окно браузера с сайтом, заданным в настройках индикатора.
理由: