コーディングのヘルプ - ページ 657 1...650651652653654655656657658659660661662663664...786 新しいコメント Cenk 2016.07.13 09:55 #6561 親愛なる友人たちへ。このeaはある時に異なったペアで働くか。例:EURUSD + GBPUSDなどを作業しているいくつかの時間で。ありがとうございます... ファイル: ema_cross_32_nmc.mq4 11 kb Mladen Rakic 2016.07.13 10:21 #6562 oguz: 親愛なる友人たちへ。このeaはある時に異なったペアで働くか。例:EURUSD + GBPUSDなどを作業しているいくつかの時間で。ありがとうございます... 異なるマジックナンバーで異なるチャートに添付して、それは問題なく動作するはずです。そうでなければ、コードから判断して、あなたは大きなミックスアップを持つことができます Cenk 2016.07.13 10:32 #6563 mladen: 違うチャートに違うマジックナンバーで貼り付ければ、問題なく動作するはずです。そうでなければ、コードから判断して、大混乱に陥る可能性があります。 詳細な情報をありがとうございました。ところで、マジックナンバーに任意の数字を付けることは可能でしょうか?デフォルトのマジックナンバーは "288 "です。私はそれを添付することができます。398, 477, 501, 875などです。? FxSteven 2016.07.17 13:55 #6564 親愛なるムラデン。私はどのように私は反対側の信号がコードに閉じる追加することができます知っていますか?extern bool oppositeSignalclose=true; 私はそれを試してみましたが、それはすべてのバーで閉じています。あなたは私が "OrderSended "のために変更する必要があるかを見るために私を助けることができる購入/販売後にすべての買いを閉じると、すべての販売を閉じます。ありがとうございます。 // New buy orders TotalBuyOrders = CountOfOrders(MagicNumberBuy); if(TotalBuyOrders > 0 && TotalBuyOrders < MaxTrades) { OrderSended = -1; LastSellPrice = FindLastOrderParameter(MagicNumberBuy, "price"); if(LastSellPrice - Ask >= GetPipstepForStep(TotalBuyOrders + 1) * vPoint) { BLot = GetLotForStep(MagicNumberBuy, TotalBuyOrders); BComment = StringSubstr(LastOrderComment, 0, StringFind(LastOrderComment, "|", 0)) + "|"; OrderSended = SendMarketOrder(OP_BUY, BLot, 0, 0, MagicNumberBuy, BComment); } } // New sell orders TotalSellOrders = CountOfOrders(MagicNumberSell); if(TotalSellOrders > 0 && TotalSellOrders < MaxTrades) { OrderSended = -1; LastBuyPrice = FindLastOrderParameter(MagicNumberSell, "price"); if (Bid - LastBuyPrice >= GetPipstepForStep(TotalSellOrders + 1) * vPoint) { SLot = GetLotForStep(MagicNumberSell, TotalSellOrders); SComment = StringSubstr(LastOrderComment, 0, StringFind(LastOrderComment, "|", 0)) + "|"; OrderSended = SendMarketOrder(OP_SELL, SLot, 0, 0, MagicNumberSell, SComment); } } Mladen Rakic 2016.07.17 14:37 #6565 stevenpun: 親愛なるムラデン。私はどのように私は反対側の信号がコードに閉じる追加することができます知っていますか?私はそれを試してみましたが、それはすべてのバーで閉じています。あなたは私が "OrderSended "のために変更する必要があるかを見るために私を助けることができる購入/販売後にすべての買いを閉じると、すべての販売を閉じます。ありがとうございます。 oppositeSignalcloseがtrueに設定されている場合、CountOfOrdersへの呼び出しを反転させる(つまり、このようなもの:if (oppositeSignalclose) TotalBuyOrders = CountOfOrders(MagicNumberBuy); else TotalBuyOrders = CountOfOrders(MagicNumberSell); そして、売り注文にも 同じことをする FxSteven 2016.07.17 19:42 #6566 mladen:oppositeSignalcloseがtrueに設定されている場合、CountOfOrdersの呼び出しを反転させる(つまり、次のようなもの。 そして、あまりにも売り注文のために同じことを行う これは反対売買なのですか?私は、反対信号のときに現在の取引の終了をしたい。私はネット上のコードのいずれかを見つけるが、それは各バーで閉じている。あなたは、私は正しい方法または私が望む別のものを挿入したことを確認 するために私を助けることができる。そして、ろうそくのトレーリングストップは、私はあなたが先週私に教えてくれたことをやったが、まだ働くことができない。extern bool oppositeclose=true;if((oppositeclose && sell))closebuy(); if((oppositeclose && buy))closesell();//|---------close void closebuy(){ RefreshRates(); if(OrdersTotal()>0){ for(int i=OrdersTotal();i>=0;i--){ OrderSelect(i,SELECT_BY_POS,MODE_TRADES); if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic && OrderType()==OP_BUY){ OrderClose(OrderTicket(),OrderLots(),Bid,slippage*mt); } } } } void closesell(){ RefreshRates(); if(OrdersTotal()>0){ for(int i=OrdersTotal();i>=0;i--){ OrderSelect(i,SELECT_BY_POS,MODE_TRADES); if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic && OrderType()==OP_SELL){ OrderClose(OrderTicket(),OrderLots(),Ask,slippage*mt); } } } } ファイル: BbandTest.mq4 37 kb Mladen Rakic 2016.07.17 20:19 #6567 stevenpun: これは、逆取引ですか?私は反対信号のときに、現在の取引の終了をしたい。私はネット上のコードのいずれかを見つけるが、それは各バーに閉じます。 あなたは、私は正しい方法または私が望む別のものを挿入したことを確認するために私を助けることができる。そして、ろうそくのトレーリングストップは、私はあなたが先週に教えてくれたことをやったが、まだ動作しません。 私が見る限り、それは正しいはずです。 Kostumer27 2016.07.17 21:38 #6568 インジケータを.csvにエクスポート するコードについて教えてください。OHLCの後に複数のデータ列をエクスポートするには、何を修正する必要があります...?//+------------------------------------------------------------------+//| RSI_to_File.mq4 |//| Copyright © 2007, MetaQuotes Software Corp. |//| [url]http://www.metaquotes.ru/[/url] |//+------------------------------------------------------------------+#property copyright "Copyright © 2007, MetaQuotes Software Corp."#property link "http://www.metaquotes.ru/"#property show_inputsstring SymbolsArray[13]={"","GBPUSD","EURUSD"};//+------------------------------------------------------------------+//| string SymbolByNumber |//+------------------------------------------------------------------+string GetSymbolString(int Number) {//---- string res=""; res=SymbolsArray[Number]; //---- return(res); }//+------------------------------------------------------------------+//| возвращает период |//+------------------------------------------------------------------+int PeriodNumber(int number) { int per_min; switch (number) { default: per_min=PERIOD_M1;break; case 1: per_min=PERIOD_M5;break; case 2: per_min=PERIOD_M12;break; } return(per_min); }//+------------------------------------------------------------------+//| выводит в файл котировки + значения индикатора |//+------------------------------------------------------------------+void IFT_output(string SymbolName,int PeriodMinutes) { int size=iBars(SymbolName,PeriodMinutes);//---- if (size==0) return; int handle=FileOpen(SymbolName+PeriodMinutes+"_IFT.csv",FILE_WRITE|FILE_CSV); if (handle<0) return; FileWrite(handle,"Time seconds;Time;Open;Low;High;Close;Volume;IFT"); for (int i=size-1;i>=0;i--) { FileWrite(handle,iTime(SymbolName,PeriodMinutes,i),TimeToStr(iTime(SymbolName,PeriodMinutes,i)) ,iOpen(SymbolName,PeriodMinutes,i),iLow(SymbolName,PeriodMinutes,i),iHigh(SymbolName,PeriodMinutes,i) ,iClose(SymbolName,PeriodMinutes,i),iVolume(SymbolName,PeriodMinutes,i),iCustom(SymbolName,PeriodMinutes,"IFT",0,i)); } FileClose(handle); //---- return; }//+------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------+int start() { int SymbolCounter,PeriodCounter; //---- for (SymbolCounter=1;SymbolCounter<13;SymbolCounter++) { for (PeriodCounter=2;PeriodCounter<=6;PeriodCounter++) { //Print("NewBar on ",GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter),"M"); IFT_output(GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter)); } } //---- return(0); }//+------------------------------------------------------------------+ Coding help MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 [ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you Mladen Rakic 2016.07.18 05:56 #6569 kostumer27: インジケーターを.csvにエクスポートするコードを教えてください。 それはちょうど1つの指標を書くことができます...OHLCの後に複数のデータ列をエクスポートするには、何を修正する必要があります...?//+------------------------------------------------------------------+//| RSI_to_File.mq4 |//| Copyright © 2007, MetaQuotes Software Corp. |//| [url]http://www.metaquotes.ru/[/url] |//+------------------------------------------------------------------+#property copyright "Copyright © 2007, MetaQuotes Software Corp."#property link "http://www.metaquotes.ru/"#property show_inputsstring SymbolsArray[13]={"","GBPUSD","EURUSD"};//+------------------------------------------------------------------+//| string SymbolByNumber |//+------------------------------------------------------------------+string GetSymbolString(int Number) {//---- string res=""; res=SymbolsArray[Number]; //---- return(res); }//+------------------------------------------------------------------+//| возвращает период |//+------------------------------------------------------------------+int PeriodNumber(int number) { int per_min; switch (number) { default: per_min=PERIOD_M1;break; case 1: per_min=PERIOD_M5;break; case 2: per_min=PERIOD_M12;break; } return(per_min); }//+------------------------------------------------------------------+//| выводит в файл котировки + значения индикатора |//+------------------------------------------------------------------+void IFT_output(string SymbolName,int PeriodMinutes) { int size=iBars(SymbolName,PeriodMinutes);//---- if (size==0) return; int handle=FileOpen(SymbolName+PeriodMinutes+"_IFT.csv",FILE_WRITE|FILE_CSV); if (handle<0) return; FileWrite(handle,"Time seconds;Time;Open;Low;High;Close;Volume;IFT"); for (int i=size-1;i>=0;i--) { FileWrite(handle,iTime(SymbolName,PeriodMinutes,i),TimeToStr(iTime(SymbolName,PeriodMinutes,i)) ,iOpen(SymbolName,PeriodMinutes,i),iLow(SymbolName,PeriodMinutes,i),iHigh(SymbolName,PeriodMinutes,i) ,iClose(SymbolName,PeriodMinutes,i),iVolume(SymbolName,PeriodMinutes,i),iCustom(SymbolName,PeriodMinutes,"IFT",0,i)); } FileClose(handle); //---- return; }//+------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------+int start() { int SymbolCounter,PeriodCounter; //---- for (SymbolCounter=1;SymbolCounter<13;SymbolCounter++) { for (PeriodCounter=2;PeriodCounter<=6;PeriodCounter++) { //Print("NewBar on ",GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter),"M"); IFT_output(GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter)); } } //---- return(0); }//+------------------------------------------------------------------+ FileWrite()関数の パラメータにエクスポートしたいデータを追加するだけです。 FxSteven 2016.07.18 06:12 #6570 mladen: 私が見る限り、それは正しいはずです。 私は逆のクローズ機能を 解決しました:>。しかし、あなたが自由なときあなたはキャンドルトレーリングストップを確認するために助けることができる、私はまだそれを解決することはできません:(。 1...650651652653654655656657658659660661662663664...786 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
親愛なる友人たちへ。
このeaはある時に異なったペアで働くか。
例:EURUSD + GBPUSDなどを作業しているいくつかの時間で。
ありがとうございます...
親愛なる友人たちへ。
このeaはある時に異なったペアで働くか。
例:EURUSD + GBPUSDなどを作業しているいくつかの時間で。
ありがとうございます...
違うチャートに違うマジックナンバーで貼り付ければ、問題なく動作するはずです。そうでなければ、コードから判断して、大混乱に陥る可能性があります。
詳細な情報をありがとうございました。
ところで、マジックナンバーに任意の数字を付けることは可能でしょうか?
デフォルトのマジックナンバーは "288 "です。
私はそれを添付することができます。398, 477, 501, 875などです。?
親愛なるムラデン。
私はどのように私は反対側の信号がコードに閉じる追加することができます知っていますか?
私はそれを試してみましたが、それはすべてのバーで閉じています。
あなたは私が "OrderSended "のために変更する必要があるかを見るために私を助けることができる購入/販売後にすべての買いを閉じると、すべての販売を閉じます。
ありがとうございます。
親愛なるムラデン。
私はどのように私は反対側の信号がコードに閉じる追加することができます知っていますか?
私はそれを試してみましたが、それはすべてのバーで閉じています。
あなたは私が "OrderSended "のために変更する必要があるかを見るために私を助けることができる購入/販売後にすべての買いを閉じると、すべての販売を閉じます。
ありがとうございます。
oppositeSignalcloseがtrueに設定されている場合、CountOfOrdersへの呼び出しを反転させる(つまり、このようなもの:
そして、売り注文にも 同じことをするoppositeSignalcloseがtrueに設定されている場合、CountOfOrdersの呼び出しを反転させる(つまり、次のようなもの。
そして、あまりにも売り注文のために同じことを行うこれは反対売買なのですか?
私は、反対信号のときに現在の取引の終了をしたい。
私はネット上のコードのいずれかを見つけるが、それは各バーで閉じている。
あなたは、私は正しい方法または私が望む別のものを挿入したことを確認 するために私を助けることができる。
そして、ろうそくのトレーリングストップは、私はあなたが先週私に教えてくれたことをやったが、まだ働くことができない。
これは、逆取引ですか?
私は反対信号のときに、現在の取引の終了をしたい。
私はネット上のコードのいずれかを見つけるが、それは各バーに閉じます。
あなたは、私は正しい方法または私が望む別のものを挿入したことを確認するために私を助けることができる。
そして、ろうそくのトレーリングストップは、私はあなたが先週に教えてくれたことをやったが、まだ動作しません。
インジケータを.csvにエクスポート するコードについて教えてください。
OHLCの後に複数のデータ列をエクスポートするには、何を修正する必要があります...?
//+------------------------------------------------------------------+
//| RSI_to_File.mq4 |
//| Copyright © 2007, MetaQuotes Software Corp. |
//| [url]http://www.metaquotes.ru/[/url] |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link "http://www.metaquotes.ru/"
#property show_inputs
string SymbolsArray[13]={"","GBPUSD","EURUSD"};
//+------------------------------------------------------------------+
//| string SymbolByNumber |
//+------------------------------------------------------------------+
string GetSymbolString(int Number)
{
//----
string res="";
res=SymbolsArray[Number];
//----
return(res);
}
//+------------------------------------------------------------------+
//| возвращает период |
//+------------------------------------------------------------------+
int PeriodNumber(int number)
{
int per_min;
switch (number)
{
default: per_min=PERIOD_M1;break;
case 1: per_min=PERIOD_M5;break;
case 2: per_min=PERIOD_M12;break;
}
return(per_min);
}
//+------------------------------------------------------------------+
//| выводит в файл котировки + значения индикатора |
//+------------------------------------------------------------------+
void IFT_output(string SymbolName,int PeriodMinutes)
{
int size=iBars(SymbolName,PeriodMinutes);
//----
if (size==0) return;
int handle=FileOpen(SymbolName+PeriodMinutes+"_IFT.csv",FILE_WRITE|FILE_CSV);
if (handle<0) return;
FileWrite(handle,"Time seconds;Time;Open;Low;High;Close;Volume;IFT");
for (int i=size-1;i>=0;i--)
{
FileWrite(handle,iTime(SymbolName,PeriodMinutes,i),TimeToStr(iTime(SymbolName,PeriodMinutes,i))
,iOpen(SymbolName,PeriodMinutes,i),iLow(SymbolName,PeriodMinutes,i),iHigh(SymbolName,PeriodMinutes,i)
,iClose(SymbolName,PeriodMinutes,i),iVolume(SymbolName,PeriodMinutes,i),iCustom(SymbolName,PeriodMinutes,"IFT",0,i));
}
FileClose(handle);
//----
return;
}
//+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start()
{
int SymbolCounter,PeriodCounter;
//----
for (SymbolCounter=1;SymbolCounter<13;SymbolCounter++)
{
for (PeriodCounter=2;PeriodCounter<=6;PeriodCounter++)
{
//Print("NewBar on ",GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter),"M");
IFT_output(GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter));
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
インジケーターを.csvにエクスポートするコードを教えてください。
それはちょうど1つの指標を書くことができます...
OHLCの後に複数のデータ列をエクスポートするには、何を修正する必要があります...?
//+------------------------------------------------------------------+
//| RSI_to_File.mq4 |
//| Copyright © 2007, MetaQuotes Software Corp. |
//| [url]http://www.metaquotes.ru/[/url] |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link "http://www.metaquotes.ru/"
#property show_inputs
string SymbolsArray[13]={"","GBPUSD","EURUSD"};
//+------------------------------------------------------------------+
//| string SymbolByNumber |
//+------------------------------------------------------------------+
string GetSymbolString(int Number)
{
//----
string res="";
res=SymbolsArray[Number];
//----
return(res);
}
//+------------------------------------------------------------------+
//| возвращает период |
//+------------------------------------------------------------------+
int PeriodNumber(int number)
{
int per_min;
switch (number)
{
default: per_min=PERIOD_M1;break;
case 1: per_min=PERIOD_M5;break;
case 2: per_min=PERIOD_M12;break;
}
return(per_min);
}
//+------------------------------------------------------------------+
//| выводит в файл котировки + значения индикатора |
//+------------------------------------------------------------------+
void IFT_output(string SymbolName,int PeriodMinutes)
{
int size=iBars(SymbolName,PeriodMinutes);
//----
if (size==0) return;
int handle=FileOpen(SymbolName+PeriodMinutes+"_IFT.csv",FILE_WRITE|FILE_CSV);
if (handle<0) return;
FileWrite(handle,"Time seconds;Time;Open;Low;High;Close;Volume;IFT");
for (int i=size-1;i>=0;i--)
{
FileWrite(handle,iTime(SymbolName,PeriodMinutes,i),TimeToStr(iTime(SymbolName,PeriodMinutes,i))
,iOpen(SymbolName,PeriodMinutes,i),iLow(SymbolName,PeriodMinutes,i),iHigh(SymbolName,PeriodMinutes,i)
,iClose(SymbolName,PeriodMinutes,i),iVolume(SymbolName,PeriodMinutes,i),iCustom(SymbolName,PeriodMinutes,"IFT",0,i));
}
FileClose(handle);
//----
return;
}
//+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start()
{
int SymbolCounter,PeriodCounter;
//----
for (SymbolCounter=1;SymbolCounter<13;SymbolCounter++)
{
for (PeriodCounter=2;PeriodCounter<=6;PeriodCounter++)
{
//Print("NewBar on ",GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter),"M");
IFT_output(GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter));
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
私が見る限り、それは正しいはずです。
私は逆のクローズ機能を 解決しました:>。
しかし、あなたが自由なときあなたはキャンドルトレーリングストップを確認するために助けることができる、私はまだそれを解決することはできません:(。