[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 457 1...450451452453454455456457458459460461462463464...652 新しいコメント Сергей Исаев 2011.12.26 15:28 #4561 sergeev: ロットを標準化する ありがとうございました。助かりました。 Gerkl 2011.12.26 19:07 #4562 こんにちは!データをExcelにエクスポートすることについて質問です。毎日の初めに「残高」「資金」等の現在値を自動的にExcelにエクスポートするインジケータ(またはスクリプト)が必要です。どのように実装すればよいか教えてください。せめて、どこで読めるかだけでも。検索しても結果が出なかったので、こちらで質問させていただきました。 ありがとうございます。 Всеволод 2011.12.26 22:00 #4563 Gerkl: こんにちは!データをExcelにエクスポートすることについて質問です。毎日の初めに「残高」「資金」等の現在値を自動的にExcelにエクスポートするインジケータ(またはスクリプト)が必要です。どのように実装すればよいか教えてください。せめて、どこで読めるかだけでも。検索しても結果が出なかったので、こちらで質問させていただきました。 ありがとうございます。 Expertでcsvファイルを保存すると、Excelでかなり正常に処理されます。 Gerkl 2011.12.26 22:14 #4564 splxgf: エキスパートでcsvファイルを保存すれば、Excelでかなり正常に処理できます。 どうすればいいか教えてください。そして、その詳細を知ることができる場所。 ありがとうございます。 Vadim Zhunko 2011.12.27 00:40 #4565 Gerkl: どうすればいいか教えてください。また、どこで詳しく知ることができるのでしょうか? ありがとうございます。https://docs.mql4.com/ru/files 削除済み 2011.12.27 00:56 #4566 EAのインジケータを チャートに描画しないようにするにはどうしたらよいか教えてください。 つまり、インジケーターの線がチャート上に描画されないのです。インジケータはこのように呼び出されます。 indikator_1=iMA(NULL,60,maTrendPeriodv_1,0,MODE_SMA,PRICE_CLOSE,0); Gerkl 2011.12.27 01:07 #4567 ありがとうございます。あまり実感がわかないのですが、これから調べてみます。 Zhunko: https://docs.mql4.com/ru/files Artyom Trishkin 2011.12.27 02:07 #4568 belck: EAのインジケータをチャートに描画しないようにするにはどうしたらよいか教えてください。 つまり、インジケーターの線がチャート上に描画されないのです。インジケータはこのように呼び出されます。 indikator_1=iMA(NULL,60,maTrendPeriodv_1,0,MODE_SMA,PRICE_CLOSE,0); 自分でチャートに書き込まない限り、EA実行時には反映されません。どうやったんですか? 削除済み 2011.12.27 03:42 #4569 EAのテスト中にエラー130 - 間違った停止位置が表示されました。NewOrder関数では、外部変数TakeProfitとStopLossが渡されるはずで、これを達成するためにあらゆることを行ったように思えますが、印刷が示すようにゼロが渡されています。このエラーの原因がここにあることは理解しているのですが、まだ見つけることができていません。あなたの力が必要です。 extern int TakeProfit=100; extern int StopLoss=100; if(KVADRAT==1) { double Lot=GetLot(MaxRisk)。 Print("Lot=",Lot)。 if(Lot==0) { Print("資金が足りません"); return(0)です。 } NewOrder(OP_BUYSTOP, Lot, TakeProfit, StopLoss)。 NewOrder(OP_SELLSTOP, Lot, TakeProfit, StopLoss)。 KVADRAT=0とする。 } //+---------Функция расчета лота---------------------------------------+ double GetLot(int Risk) { double Free=AccountFreeMargin()。 double One_Lot=MarketInfo(Symbol(),MODE_MARGINREQUIRED); double Min_Lot=MarketInfo(Symbol(),MODE_MINLOT); double Max_Lot=MarketInfo(Symbol(),MODE_MAXLOT); double Step=MarketInfo(Symbol(),MODE_LOTSTEP); double Lot=MathFloor(Free*Risk/100/One_Lot/Step)*Step; if(Lot<Min_Lot)Lot=Min_Lotとする。 if(Lot>Max_Lot)Lot=Max_Lot; if(Lot*One_Lot>Free)return(0.0)です。 return(Lot)です。 } //+----------Функция открытия ордера-----------------------------------+ int NewOrder(int Cmd,double Lot,int TakeProfit,int StopLoss) { double TP=0;//takeProfit double SL=0;// stopLoss double PR=0;// 価格 while(!IsTradeAllowed())Sleep(100)。 if(TakeProfit<MarketInfo(Symbol(),MODE_STOPLEVEL))とする。 TakeProfit=MarketInfo(Symbol(),MODE_STOPLEVEL)とする。 if(StopLoss<MarketInfo(Symbol(),MODE_STOPLEVEL))とする。 StopLoss=MarketInfo(Symbol(),MODE_STOPLEVEL); if(Cmd==OP_BUY) { PR=NormalizeDouble(Ask,Digits)。 if(TakeProfit>0)TP=NormalizeDouble(Ask+TakeProfit*Point,Digits)となります。 if(StopLoss>0)SL=NormalizeDouble(Bid-StopLoss*Point,Digits)となります。 } if(Cmd==OP_SELL) { PR=NormalizeDouble(Bid,Digits)。 if(TakeProfit>0)TP=NormalizeDouble(Bid-TakeProfit*Point,Digits)となります。 if(StopLoss>0)SL=NormalizeDouble(Ask+StopLoss*Point,Digits)となります。 } Print("TakeProfit=",TakeProfit," StopLoss=",StopLoss," StopLevel=",MarketInfo(Symbol(),MODE_STOPLEVEL)).Print("TakeProfit=",TakeProfit," StopLoss=",StopLoss,StopLevel=",MarketInfo(Symbol())); tic=OrderSend(Symbol(),Cmd,Lot,PR,3,SL,TP,"",0,0,CLR_NONE)。 if(tic<0)Print("order open error:",GetLastError()); Print("Cmd-",Cmd, "Lot=",Lot, "PR=",PR, "SL=",SL, "TP=",TP); return(tic)です。 } [ARCHIVE] Any rookie question, [アーカイブ!】どんなルーキーの質問でも、フォーラムを散らかさないように。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 2. [警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 DOCTORGAD 2011.12.27 04:36 #4570 DhP: この機能で魔法をかけてください。 * 魔法をかけに行った 1...450451452453454455456457458459460461462463464...652 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ロットを標準化する
ありがとうございました。助かりました。
こんにちは!データをExcelにエクスポートすることについて質問です。毎日の初めに「残高」「資金」等の現在値を自動的にExcelにエクスポートするインジケータ(またはスクリプト)が必要です。どのように実装すればよいか教えてください。せめて、どこで読めるかだけでも。検索しても結果が出なかったので、こちらで質問させていただきました。 ありがとうございます。
エキスパートでcsvファイルを保存すれば、Excelでかなり正常に処理できます。
どうすればいいか教えてください。また、どこで詳しく知ることができるのでしょうか? ありがとうございます。
EAのインジケータを チャートに描画しないようにするにはどうしたらよいか教えてください。
つまり、インジケーターの線がチャート上に描画されないのです。インジケータはこのように呼び出されます。
https://docs.mql4.com/ru/files
EAのインジケータをチャートに描画しないようにするにはどうしたらよいか教えてください。
つまり、インジケーターの線がチャート上に描画されないのです。インジケータはこのように呼び出されます。
EAのテスト中にエラー130 - 間違った停止位置が表示されました。NewOrder関数では、外部変数TakeProfitとStopLossが渡されるはずで、これを達成するためにあらゆることを行ったように思えますが、印刷が示すようにゼロが渡されています。このエラーの原因がここにあることは理解しているのですが、まだ見つけることができていません。あなたの力が必要です。
extern int TakeProfit=100;
extern int StopLoss=100;
if(KVADRAT==1)
{
double Lot=GetLot(MaxRisk)。
Print("Lot=",Lot)。
if(Lot==0)
{
Print("資金が足りません");
return(0)です。
}
NewOrder(OP_BUYSTOP, Lot, TakeProfit, StopLoss)。
NewOrder(OP_SELLSTOP, Lot, TakeProfit, StopLoss)。
KVADRAT=0とする。
}
//+---------Функция расчета лота---------------------------------------+
double GetLot(int Risk)
{
double Free=AccountFreeMargin()。
double One_Lot=MarketInfo(Symbol(),MODE_MARGINREQUIRED);
double Min_Lot=MarketInfo(Symbol(),MODE_MINLOT);
double Max_Lot=MarketInfo(Symbol(),MODE_MAXLOT);
double Step=MarketInfo(Symbol(),MODE_LOTSTEP);
double Lot=MathFloor(Free*Risk/100/One_Lot/Step)*Step;
if(Lot<Min_Lot)Lot=Min_Lotとする。
if(Lot>Max_Lot)Lot=Max_Lot;
if(Lot*One_Lot>Free)return(0.0)です。
return(Lot)です。
}
//+----------Функция открытия ордера-----------------------------------+
int NewOrder(int Cmd,double Lot,int TakeProfit,int StopLoss)
{
double TP=0;//takeProfit
double SL=0;// stopLoss
double PR=0;// 価格
while(!IsTradeAllowed())Sleep(100)。
if(TakeProfit<MarketInfo(Symbol(),MODE_STOPLEVEL))とする。
TakeProfit=MarketInfo(Symbol(),MODE_STOPLEVEL)とする。
if(StopLoss<MarketInfo(Symbol(),MODE_STOPLEVEL))とする。
StopLoss=MarketInfo(Symbol(),MODE_STOPLEVEL);
if(Cmd==OP_BUY)
{
PR=NormalizeDouble(Ask,Digits)。
if(TakeProfit>0)TP=NormalizeDouble(Ask+TakeProfit*Point,Digits)となります。
if(StopLoss>0)SL=NormalizeDouble(Bid-StopLoss*Point,Digits)となります。
}
if(Cmd==OP_SELL)
{
PR=NormalizeDouble(Bid,Digits)。
if(TakeProfit>0)TP=NormalizeDouble(Bid-TakeProfit*Point,Digits)となります。
if(StopLoss>0)SL=NormalizeDouble(Ask+StopLoss*Point,Digits)となります。
}
Print("TakeProfit=",TakeProfit," StopLoss=",StopLoss," StopLevel=",MarketInfo(Symbol(),MODE_STOPLEVEL)).Print("TakeProfit=",TakeProfit," StopLoss=",StopLoss,StopLevel=",MarketInfo(Symbol()));
tic=OrderSend(Symbol(),Cmd,Lot,PR,3,SL,TP,"",0,0,CLR_NONE)。
if(tic<0)Print("order open error:",GetLastError()); Print("Cmd-",Cmd, "Lot=",Lot, "PR=",PR, "SL=",SL, "TP=",TP);
return(tic)です。
}
この機能で魔法をかけてください。
* 魔法をかけに行った