[ARCHIVE]フォーラムを乱立させないために、どんなルーキーの質問でも。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 5. - ページ 24

 
WindSW:

ビアプリント

このデザインを試す

double xDelH[1][1];
double HBar[1][1];

int countDH=0;
HBar[countH][0]=1.23456;

xDelH[countDH][0]=HBar[countH][0];

Print("HBar=",DoubleToStr(HBar[countH][0],3),"  xDelH=",DoubleToStr(xDelH[countDH][0],4));
// распечатается: HBar=1.234  xDelH=1.2345

その様子をご覧ください。

 
Dimka-novitsek:
はい、ありがとうございます!!!私は、路上からまっすぐパソコンに向かってきて、完全に何かを勘違いしてしまった人間なのです

ディミトリ!2つほどヒントをあげますね。まずコード(違いを捉えてみてください)。

//---- Константы
#define MAGIC 450
//---- Внешние переменные советника
extern int StopLoss   = 25;
extern int TakeProfit = 30;
//---- Глобальные переменные
double gd_TP, gd_SL;
int init()
{
    gd_TP = TakeProfit * Point;
    gd_SL = StopLoss * Point;
}
//---- Здесь какая-то пользовательская функция или start()
    if (Svetsja_1) if (!Svetsja_2) if (!Svetsja_3) if (!Orderbuy)
    {
        //стоп лосс 25 п. профит 30 п;стоп лосс 25 п. тралится по MA 20    
        double ld_TP, ld_SL;
        RefreshRates();
        if (TakeProfit != 0.0) ld_TP = NormalizeDouble (Bid + gd_TP);
        if (StopLoss != 0.0) ld_SL = NormalizeDouble (Bid - gd_SL);
        int li_Ticket = OrderSend (Symbol(), OP_BUY, lot, NormalizeDouble (Ask, Digits), 5, ld_SL, ld_TP, NULL, MAGIC, 0, CLR_NONE);
        if (li_Ticket > 0)
        {  
            Sleep (2000); RefreshRates(); 
            li_Ticket = OrderSend (Symbol(), OP_BUY, lot, NormalizeDouble (Ask, Digits), 5, ld_SL, ld_TP, NULL, MAGIC, 0, CLR_NONE);
            if (li_Ticket > 0) Orderbuy = 1;
            else
            {
                Error = GetLastError();
                string errorcomment = "Ошибка открытия ордера OP_BUY" + " " + Symbol() + " " + ErrorDescript (Error); 
                Print (errorcomment);
            }
        }
    }

どのような点が違っていたのでしょうか?- それをリストアップして、私はその後、アドバイスを策定します(もちろん、あなたが興味を持てばですが)。;)

 
本当にありがとうございました!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ページを更新して見ました。もうすぐ弟が来るので、後日報告します。
 
GBPUSD,H1:ゼロ除算の エラーについてご教示ください。
 
Frostr:
GBPUSD,H1:ゼロ除算のエラーについてご教示ください。


ゼロによる除算。
 
Frostr:
GBPUSD,H1:ゼロ除算のエラーについてご教示ください。


特にテスターで、他のチャートからの値を使おうとしている場合は。例えば、EURUSDでExpert Advisorをテストしているときに、他のチャートからインジケータのデータを取り込もうとすると...。
 

何が悪いのか理解できない。今までこんなことはなかったのに。インジケータ読み込みのためにiCustom()を呼び出した 結果、Expert Advisorがインジケータファイルを開けないという書き込みをします。

以下は私が使っていたコードで、常に動作していました。

#property show_inputs
// ------------- Пользовательские переменные ------------------------
extern string   с1=" -------- Rad Has -------------";
extern string   IndiRadHas_Name="Rad_Has";
extern int                      MaMetod  = 2;
extern int                      MaPeriod = 6;
extern int                      MaMetod2  = 3;
extern int                      MaPeriod2 = 2;

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start(){
  // -------------- Пользовательские переменные -------------------
        string  SMB=Symbol();

        Alert("======================================");
        // --------------- инициализируем значения индикатора RadHas -----------------------------------
                double RadHas_0_1=iCustom(SMB,0,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2,0,1);
                double RadHas_1_1=iCustom(SMB,0,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2,1,1);
                double RadHas_2_1=iCustom(SMB,0,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2,2,1);
                double RadHas_3_1=iCustom(SMB,0,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2,3,1);
                //RadHas_0_1=NormalizeDouble(RadHas_0_1,Digits);
                //RadHas_1_1=NormalizeDouble(RadHas_1_1,Digits);
                //RadHas_2_1=NormalizeDouble(RadHas_2_1,Digits);
                //RadHas_3_1=NormalizeDouble(RadHas_3_1,Digits);
        Alert("RadHas_0_1 = ",RadHas_0_1);
        Alert("RadHas_1_1 = ",RadHas_1_1);
        Alert("RadHas_2_1 = ",RadHas_2_1);
        Alert("RadHas_3_1 = ",RadHas_3_1);
        Alert("============== Скрипт 0 на паре ",SMB," ==============");
return(0);

}
//+------------------------------------------------------------------+
インジケーターはポストに取り付けられています。インジケーターファイルが開けないのはなぜですか?
ファイル:
rads_has.mq4  6 kb
 
言い忘れましたが、端末のビルドは445です
 
drknn:
言い忘れましたが、端末のビルドは445です

設定上、外部専門家の呼び出しは可能か?
 
rigonich:

外部専門家の招集は設定上可能か?

FXのプログラミングを始めて 7年目になります。こんな重大なミスを見逃すはずがない。このスクリプトで読み取ったインジケータをターミナルで呼び出してみるのです。

1年前にこの特定のインジケータをスクリプトで呼び出したときは、すべてがうまくいっていたことです。今と同じような呼び方をしていました。