[ARCHIVE] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 5. - 페이지 35

 
keep87 :

double get_extrem(int n) {

   for(int i=1;;i++) {

      double ind=iCustom(Symbol(),0,"indicator_name",0,i);

      if(n>1)  

         if(ind!=0) n--;

         else

         if(ind!=0) return(ind);

      }

   }


이와 같이. 함수에 n(피크 번호)을 지정하면 해당 값이 반환됩니다. 피크 막대 번호가 필요한 경우 함수 유형을 int로 변경하고 return(ind) 대신; return(i) 쓰기;

나는 지금 이것에 대해 생각하고 있다. 나에게 doubleint 유형의 모든 함수는 항상 고정 값을 반환합니다. 예를 들어, 1 , 0 , -1 그리고 이 경우 조건은 이전과 다르게 이 함수로 생성되어야 합니다.

 if (FindOrders() > 1 )

{

   Ordersend(...........); 

} 

이 경우, 예를 들어 세 번째 무릎에 대해 비교해야 합니다.

 if (get_extrem( 3 ) == ind)
{
   // Делаем что-то при выполнении заданного условия
}

글을 쓰는 것이 논리적입니까? 이 함수에 bool 유형을 설정하는 것이 더 합리적일 수 있습니까? 그들은 말합니다. 세 번째 무릎을 찾으면 가격( ind 이하 또는 이상)으로 구매하거나 판매합니다. 제 주장을 분명히 한 것 같습니다.

그리고 이 경우에 우리는 n -leg에 의해 매개변수와 함수를 이 무릎의 가격과 비교하고 다음은 무엇입니까?

 
hoz :

나는 지금 이것에 대해 생각하고 있다. 나에게 doubleint 유형의 모든 함수는 항상 고정 값을 반환합니다. 예를 들어, 1 , 0 , -1 그리고 이 경우 조건은 이전과 다르게 이 함수로 생성되어야 합니다.

이 경우, 예를 들어 세 번째 무릎에 대해 비교해야 합니다.

글을 쓰는 것이 논리적입니까? 이 함수에 bool 유형을 설정하는 것이 더 합리적일 수 있습니까? 그들은 말합니다. 세 번째 무릎을 찾으면 가격( ind 이하 또는 이상)으로 구매하거나 판매합니다. 제 주장을 분명히 한 것 같습니다.

그리고 이 경우에 우리는 n -leg에 의해 매개변수와 함수를 이 무릎의 가격과 비교하고 다음은 무엇입니까?



 double ind= iCustom ( Symbol (), 0 , "indicator_name" , 0 ,i);

Double ind는 -2, -3 등을 반환할 수 있으며 심지어 Pi 3.14159......

그리고 이 경우에 우리는 n -leg에 의해 매개변수와 함수를 이 무릎의 가격과 비교하고 다음은 무엇입니까? 명확하지 않다....

 
hoz :

나는 지금 이것에 대해 생각하고 있다. 나에게 doubleint 유형의 모든 함수는 항상 고정 값을 반환합니다. 예를 들어, 1 , 0 , -1 그리고 이 경우 조건은 이전과 다르게 이 함수로 생성되어야 합니다.

이 경우, 예를 들어 세 번째 무릎에 대해 비교해야 합니다.

글을 쓰는 것이 논리적입니까? 이 함수에 bool 유형을 설정하는 것이 더 합리적일 수 있습니까? 그들은 말합니다. 세 번째 무릎을 찾으면 가격( ind 이하 또는 이상)으로 구매하거나 판매합니다. 제 주장을 분명히 한 것 같습니다.

그리고 이 경우에 우리는 n -leg에 의해 매개변수와 함수를 이 무릎의 가격과 비교하고 다음은 무엇입니까?



글쎄, 아니, 실험을 시도 ......이 모든 헛소리 ......
 
Sepulca :


Double ind는 -2, -3 등을 반환할 수 있으며 심지어 Pi 3.14159......

그리고 이 경우에 우리는 n -leg에 의해 매개변수와 함수를 이 무릎의 가격과 비교하고 다음은 무엇입니까?


갑자기 왜 그럴까요? Double ind 는 소수를 반환합니다... 그리고 -2, -3 ..은 정수입니다. 그리고 내가 이해하는 것처럼 Double ind get_extrem(int n) 함수 매개변수에 있는 값의 가격입니다.
 
Sepulca :



글쎄요, 이 사이트는 거래 목적이 아닙니다... 주로 MQL 프로그래밍 전용입니다. 많은 코드에서 주의를 기울이면 "실제 거래가 아님"이라는 경고도 표시됩니다.

그리고 그 교수는 어디에 있습니까? 누가 프로처럼 거래합니다. 그리고 관리자들이 이런 식으로 알게 된다면 사이트 지원에 신경쓰지 않을 것 같아요...)))

벽에 완두콩처럼).

무작위로 선택한 기간에 올바른 구매의 예가 필요합니다.

예, 그들은 실제 거래를 위해 쓰지 않습니다. 그리고 무엇을, 왜?

전략을 발표하지 않고 실제 거래의 예를 보여주지 않는 이유는 무엇입니까?

또는 원칙적으로 올바른 예가 없습니다.

 

안녕하세요. 어드바이저가 해당 지표에서 Heiken Ashi (HA) Hi-Lo(진폭) 매개변수를 얻는 방법을 알려주십시오. 전역 변수를 다루려고 했지만 뭔가 빡빡합니다. HA 코드에서 나는 이런 식으로 수신을 구축했다.

정수 시작()

{

이중 haOpen, haHigh, haLow, haClose, pip ;

...

전역변수 가져오기(pip);

...(여기에 HA 계산이 포함된 표준 코드가 있습니다)

다음은 Hi-Lo 양초 HA의 매개변수를 가져오는 것입니다.

result2=MathMin(ExtMapBuffer3[pos+1],ExtMapBuffer4[pos+1]);

result22=MathMax(ExtMapBuffer3[pos+1],ExtMapBuffer4[pos+1]);

result3=MathMin(낮음[pos+1],결과2);

result33=MathMax(높음[pos+1],결과22);

결과0=결과33-결과3; \\진폭 계산 ON

글로벌변수셋(pip,결과0);   \\글로벌 할당 진폭 값

포스--;

}

//----

리턴(0);

}

그런 다음 EA에서 GlobalVariableGet(pip)을 수식에 삽입하기만 하면 됩니다.   그러나 무언가가 전혀 작동하지 않습니다. pip의 값은 원래 있어야 하는 값이 아닙니다. 무슨 일이야. 또는 고문을 운영하기 위한 HA의 진폭을 얻는 것이 더 쉬울 수도 있습니다.

 
모두를 환영합니다. 프로그래밍이 처음이라 문제 해결을 부탁드립니다.

한 계정의 여러 고문이 제한된 수의 주문을 열어야 합니다.

예: 10명의 Expert Advisors, 단 5개의 주문만 열 수 있지만 통화 쌍당 1개만 열 수 있습니다.

다음과 같이 구현되어 있는데 이렇게 동작하지 않습니다.

extern int МаксКолОрдеров   = 5;

//+------------------------------------------------------------------+

int ПодсчетОткрОрдеров() {
  int k=OrdersTotal();
   if (Символ=="0") Символ=Symbol();
    for (int i=МаксКолОрдеров; i<k; i++) {
     if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==Символ || Символ=="") {
       if (МагикНомер<0 || OrderMagicNumber()==МагикНомер) {
      if (OrderMagicNumber()<1) return(True);
     }
    }
   }
  }
 return;

}

//+------------------------------------------------------------------+
int start()
  {
   if(ПодсчетОткрОрдеров()==0)ПровТоргУсловий();
   }

 
evgenGX :

1. 위에서 전역변수에 대해 알려주셨어요. 감사합니다. 문서를 읽었는데 귀하의 버전에서는 어떻게 이루어지나요?

2. 수익에 도달한 후 거래 허가가 수동으로 확인될 때까지 Expert Advisor가 더 이상 시장에 진입하지 않도록 해야 합니다.


1. 각 막대의 이익 수준을 추적합니다. 입금액의 일정 비율을 초과하면 모든 거래가 종료됩니다.

2. magick 필터와 필요한 모든 것을 추가하여 이 전문가 를 보고 편집하세요...

 

코드 작성을 도와주세요. 다음과 같은 코드를 작성하려고 했습니다.

-MA50이 MA200을 아래에서 위로 교차하고 그 이후에 교차하는 경우

- 가격이 MA50으로 떨어지면

- 차트에 두 개의 선, 지지선과 저항선이 그려집니다(마지막 15개 막대에 대해 그려짐).

모든 것이 작동하는 것처럼 보이지만 이 선을 처음으로 표시한 다음 제자리에 유지할 수 없습니다. 이것은 거래 알고리즘 에 따라 필요합니다(그리고 계속 더 그려질 예정입니다).

그들은 어떻게 든 시간이나 막대에 묶일 수 있습니까?

다음은 코드입니다. 추가해야 할 사항은 무엇입니까?

#property copyright "Copyright © 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"


bool  Fact_1 = false;                    // Глобальная перемен для бай.   
bool  Fact_2 = false;                    // Глобальная перемен для бай
bool  Fact_3 = false;                    // Глобальная перемен для бай

double support;
double resist;

 int timeFrame = 5;
 int numBars = 15;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----

//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----

  ObjectsDeleteAll(); 
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----


   //---------------------------------------------------------------------------
if (Fact_3==true)                            //Если событие уже..
         
                                              //..было, то выходим
     return(0);
 
//----

  //---- БЛОК ОТКРЫТИЯ  BUY--------------------------------------------------------------
 
 if (iMA(NULL,PERIOD_M5,50,0,MODE_EMA,PRICE_CLOSE,2)<iMA(NULL,PERIOD_M5,200,0,MODE_EMA,PRICE_CLOSE,0)&&
iMA(NULL,PERIOD_M5,50,0,MODE_EMA,PRICE_CLOSE,1)>=iMA(NULL,PERIOD_M5,200,0,MODE_EMA,PRICE_CLOSE,0))//если МА50 пересекает МА200 снизу вверх по M5
Fact_1 = true;       // Произошло событие 1 
//-
if (Fact_1 == true &&  Low[0]<= iMA(NULL,PERIOD_M5,50,0,MODE_EMA,PRICE_CLOSE,0))//если цена опустилась до МА50
 Fact_2 = true; // Произошло событие 2 
 if (Fact_2 == true)

{
// Определяем линии поддержки\сопротивления
  support = 10000;
  resist = 0;
 
  for(int u = 1;u<=numBars;u++)
  {
   if(support>iLow(Symbol(),timeFrame,u))
     support = iLow(Symbol(),timeFrame,u);
   if(resist<iHigh(Symbol(),timeFrame,u))
     resist = iHigh(Symbol(),timeFrame,u);
  }  
   ObjectSet("lineSupport",OBJPROP_PRICE1,support);
  ObjectSet("lineResist",OBJPROP_PRICE1,resist);
 
 }


 //----
  {
    ObjectCreate("lineSupport",OBJ_HLINE,0,0,0);
    ObjectSet("lineSupport",OBJPROP_COLOR,Blue);
   
    ObjectCreate("lineResist",OBJ_HLINE,0,0,0);
    ObjectSet("lineResist",OBJPROP_COLOR,Red);
    }
//----

//что сюда добавить что бы линии появившись, оставались на месте?




//----
   return(0);
  }

 

어떤 일이 일어날지, 어떤 일이 일어날 수 있습니까?

슬리피지에 대한 클리어런스를 지정하지 않고 매수, 매도 보통 + - 2 포인트.

응답으로 다시 인용하십시오 .

그리고 슬리피지 값을 설정하지 않으면 구매가 보장되나요?