コーディングのヘルプ - ページ 705

 


double BU1=iMA(Symbol(),0,ShortSma,0,MODE_SMA,PRICE_CLOSE,i+1).BU1=iMA(Symbol(),0,ShortSma,0,MODE_SMA,PRICE_CLOSE,i+1);

double BL1=iMA(Symbol(),0,LongSma,0,MODE_SMA,PRICE_CLOSE,i); double BL1=iMA(Symbol(),0,LongSma,0,MODE_SMA,PRICE_CLOSE,i);

文字列SBUY="false";文字列SSEL="false";

if(BU1<Close[1]&&BL1<Close[1])SBUY="true";if(BL1>Close[1]&&BU1>Close[1])SSEL="true";

TP後のTradeがおかしかったのですが、これで動きます。

Mladenさん、ありがとうございました。

 

こんにちは、MLadenさん。

この単語はどう訳せばいいのでしょうか。

http://forexsystemsru.com/1075962-post327.html

クラスター分析


について


 

mladenさん

MTFを作れますか?

よろしくお願いします。

ファイル:
 

親愛なるコーダーの皆さん、こんにちは。

私はおそらく単純な質問を持っていますが、私は上の瞬間に立ち往生している。

私のEAは問題なく買い注文と売り注文 を出すのですが、SIGNAL_CLOSEBUYやSIGNAL_CLOSESELLになると

SIGNAL_CLOSEBUYまたはSIGNAL_CLOSESELLになると、注文をクローズしないのです。

ここで、私はRSI_Filterを売買注文を閉じるためのトリガーとして使用します。

私は私のコードをコピーしました、私は誰かが見てみることができれば非常に幸せです。

よろしくお願いします。

#define SIGNAL_NONE      0
#define SIGNAL_BUY       1
#define SIGNAL_SELL      2
#define SIGNAL_CLOSEBUY  3
#define SIGNAL_CLOSESELL 4

extern int    MaxShortTrades   = 1;
extern int    MaxLongTrades    = 1;
int           Order            = SIGNAL_NONE;

// RSI Filter
double RSIfilter=iRSI(Symbol(),0,RSIPeriod,PRICE_CLOSE,BarShift);

// Trade Signal Indicator
double NLD1,NLD2;
      NLD1 = iCustom(NULL,0,"indicator",0,Length,0,0,1,0,0,0,1);
      NLD2 = iCustom(NULL,0,"indicator",0,Length,0,0,1,0,0,0,2);        

// Amount of long / short trades      
int longs  = 0;
int shorts = 0;
double j;
      
      for(j=OrdersTotal()-1;j>=0; j--)
        {
         if(OrderType()==OP_BUY)  longs++;  // Check # of long trades.
         if(OrderType()==OP_SELL) shorts++; // Check # of short trades
        }
                
// place orders
if(longs < MaxLongTrades && NLD1 > NLD2 && RSIfilter>55) Order  = SIGNAL_BUY;        
if(shorts < MaxShortTrades && NLD1 < NLD2 && RSIfilter<45) Order = SIGNAL_SELL;
   

// Signal Begin(Exit Buy)
if (RSIfilter<50) Order=SIGNAL_CLOSEBUY;

if(Order==SIGNAL_CLOSEBUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars!=BarCount))))
              {
               dummyResult=OrderClose(OrderTicket(),OrderLots(),Bid,Slippage*PipMultiplier,MediumSeaGreen);
               if(EachTickMode) TickCheck = True;
               if(!EachTickMode) BarCount = Bars;
               return(0);
              }

// Signal Begin(Exit Sell)                                                              
if (RSIfilter>50) Order=SIGNAL_CLOSESELL;

if(Order==SIGNAL_CLOSESELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars!=BarCount))))
                 {
                  dummyResult=OrderClose(OrderTicket(),OrderLots(),Ask,Slippage*PipMultiplier,DarkOrange);
                  if(EachTickMode) TickCheck = True;
                  if(!EachTickMode) BarCount = Bars;
                  return(0);
                 }
 
tfi_markets:

親愛なるコーダーの皆さん、こんにちは。

私はおそらく単純な質問を持っていますが、私は上の瞬間に立ち往生している。

私のEAは問題なく買い注文と売り注文を出すのですが、SIGNAL_CLOSEBUYやSIGNAL_CLOSESELLになると

SIGNAL_CLOSEBUYまたはSIGNAL_CLOSESELLになると、注文をクローズしないのです。

ここで、私はRSI_Filterを売買注文を閉じるためのトリガーとして使用します。

私は私のコードをコピーしました、私は誰かが見てみることができれば非常に幸せです。

よろしくお願いします。

#define SIGNAL_NONE      0
#define SIGNAL_BUY       1
#define SIGNAL_SELL      2
#define SIGNAL_CLOSEBUY  3
#define SIGNAL_CLOSESELL 4

extern int    MaxShortTrades   = 1;
extern int    MaxLongTrades    = 1;
int           Order            = SIGNAL_NONE;

// RSI Filter
double RSIfilter=iRSI(Symbol(),0,RSIPeriod,PRICE_CLOSE,BarShift);

// Trade Signal Indicator
double NLD1,NLD2;
      NLD1 = iCustom(NULL,0,"indicator",0,Length,0,0,1,0,0,0,1);
      NLD2 = iCustom(NULL,0,"indicator",0,Length,0,0,1,0,0,0,2);        

// Amount of long / short trades      
int longs  = 0;
int shorts = 0;
double j;
      
      for(j=OrdersTotal()-1;j>=0; j--)
        {
         if(OrderType()==OP_BUY)  longs++;  // Check # of long trades.
         if(OrderType()==OP_SELL) shorts++; // Check # of short trades
        }
                
// place orders
if(longs < MaxLongTrades && NLD1 > NLD2 && RSIfilter>55) Order  = SIGNAL_BUY;        
if(shorts < MaxShortTrades && NLD1 < NLD2 && RSIfilter<45) Order = SIGNAL_SELL;
   

// Signal Begin(Exit Buy)
if (RSIfilter<50) Order=SIGNAL_CLOSEBUY;

if(Order==SIGNAL_CLOSEBUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars!=BarCount))))
              {
               dummyResult=OrderClose(OrderTicket(),OrderLots(),Bid,Slippage*PipMultiplier,MediumSeaGreen);
               if(EachTickMode) TickCheck = True;
               if(!EachTickMode) BarCount = Bars;
               return(0);
              }

// Signal Begin(Exit Sell)                                                              
if (RSIfilter>50) Order=SIGNAL_CLOSESELL;

if(Order==SIGNAL_CLOSESELL && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars!=BarCount))))
                 {
                  dummyResult=OrderClose(OrderTicket(),OrderLots(),Ask,Slippage*PipMultiplier,DarkOrange);
                  if(EachTickMode) TickCheck = True;
                  if(!EachTickMode) BarCount = Bars;
                  return(0);
                 }

あなたが先に進む前に解決しなければならない2つの問題。

  1. まず、注文を選択する必要があります - 注文を決済する前に、注文を選択していません。
  2. 注文の種類を確認してから、注文の種類に 応じた処理を行い、注文の種類に応じて終値をbidまたはaskに調整する。
 
mladen:

この先、解決しなければならない2つの問題。

  1. まず注文を選択する必要があります - 注文を閉じる前に注文を選択したことはありません
  2. 注文の種類を確認してから、注文の種類に応じた処理を行い、注文の種類に応じて終値をビッドまたはアスクに調整する必要があります。

ムラデン様。

有益な提案をありがとうございました。

私があなたを正しく理解した場合、私は以下のコードのようなものを実装する必要があります。

EAが閉じる必要がある "buy_ticket "を選択するために。このコードはまだテストされておらず、一種の「擬似状態」です。

int buy_ticket=0;
int sell_ticket=0;
int ticket;

// Iterate through tickets
for(int i=OrdersTotal()-1; i>=0; i--)
    {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol())
         {
           if(OrderType()== OP_BUY)
              buy_ticket=OrderTicket();
            else
            if(OrderType() == OP_SELL)
               sell_ticket=OrderTicket();
           }
        }

// Close Ticket with trigger
if (RSIfilter<50) Order=SIGNAL_CLOSEBUY;

if (RSIfilter>50) Order=SIGNAL_CLOSESELL; 

                
if(Order==CLOSE_BUY && buy_ticket!=0)
         {
         if(OrderSelect(buy_ticket,SELECT_BY_TICKET))
            {
            if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),Slippage,clrDodgerBlue))
               Print("Error closing Buy #",(string)OrderTicket()," Error code ",(string)GetLastError());
            }
         }
      else
      if(Order==CLOSE_SELL && sell_ticket!=0)
         {
         if(OrderSelect(sell_ticket,SELECT_BY_TICKET))
            {
            if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),Slippage,clrDodgerBlue))
               Print("Error closing Sell #",(string)OrderTicket()," Error code ",(string)GetLastError());
            }
         }
    
 
tfi_markets:

ムラデン様。

有益な提案をありがとうございました。

もし私が正しく理解したなら、以下のコードのようなものを実装する必要があります。

EAがクローズする必要がある "buy_ticket "を選択するために。このコードはまだテストされておらず、一種の「擬似状態」です。

int buy_ticket=0;
int sell_ticket=0;
int ticket;

// Iterate through tickets
for(int i=OrdersTotal()-1; i>=0; i--)
    {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol())
         {
           if(OrderType()== OP_BUY)
              buy_ticket=OrderTicket();
            else
            if(OrderType() == OP_SELL)
               sell_ticket=OrderTicket();
           }
        }

// Close Ticket with trigger
if (RSIfilter<50) Order=SIGNAL_CLOSEBUY;

if (RSIfilter>50) Order=SIGNAL_CLOSESELL; 

                
if(Order==CLOSE_BUY && buy_ticket!=0)
         {
         if(OrderSelect(buy_ticket,SELECT_BY_TICKET))
            {
            if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),Slippage,clrDodgerBlue))
               Print("Error closing Buy #",(string)OrderTicket()," Error code ",(string)GetLastError());
            }
         }
      else
      if(Order==CLOSE_SELL && sell_ticket!=0)
         {
         if(OrderSelect(sell_ticket,SELECT_BY_TICKET))
            {
            if(!OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),Slippage,clrDodgerBlue))
               Print("Error closing Sell #",(string)OrderTicket()," Error code ",(string)GetLastError());
            }
         }
    

同時に1つの注文(同じマジック、シンボルの意味)しか開いていませんか?

もしそうなら、それは動作するでしょう。

 

親愛なる皆様へ。

添付のEAは常に固定ロットで注文を出しています(0.10で注文を出して います)。

オープンオーダーのロット値を変更したり、コントロール することはできません。


設定に"Lots " "MaximumRisk " の値がありますが、注文のロット値には有効 ではありません!

助けてください。

 

こんにちは、MLadenさん。

この写真のような空のサブウィンドウを 作れませんか?

について

 

こんにちは、Mladenさん、私はあなたの

stepma_pdf_4_4.ex4とhistgramをダウンロードしました。

をMT4にコピーしました。チャートウインドウにドラッグして表示

以下のようなメッセージが表示されるのですが、画像でご確認ください。

このインジケータの使い方を教えてください。


Lea


ps. averages_-_mtf__alerts_7_4.ex4とヒストグラムでも同じことが起こりました。

ファイル:
warning.jpg  20 kb