[경고, 주제 닫힘!] 포럼을 어지럽히지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 당신 없이는 어디에도 없습니다. - 페이지 384

 
aero >> :

1. 이유는 모르겠지만 가져오기 전에 히스토리 폴더의 모든 내용을 삭제해 볼 수 있습니다.

예, 전체 기록을 삭제했습니다.

 

표시기를 수정하는 데 도움이 됩니다. 표시기 개체 편집 창에서 화살표와 십자가의 속성을 변경할 수 있어야 합니다.


파일:
 

좋은 오후입니다.


iCustom 기능을 올바르게 사용하는 방법을 알려주시겠습니까?


예를 들어 지표가 있습니다.

"Williams의 누적/분포, WA/D - Larry Williams의 누적/분포"( https://www.mql5.com/en/code/7064 )


iCustom 기능을 사용하여 다른 표시기에서 이 표시기에 액세스하고 싶습니다.

#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 LimeGreen
#property indicator_color2 Red

extern string Symbol1="USDJPY";
extern int SignalMA_Period=5;
extern int SignalMA_Method=0;

//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexStyle(1,DRAW_LINE);
SetIndexBuffer(1,ExtMapBuffer2);
string short_name="ind";
IndicatorShortName(short_name);
SetIndexLabel(0,short_name);
SetIndexLabel(1,"Signal");
SetIndexDrawBegin(1,SignalMA_Period);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
double ad1, ad2;
//----
if(counted_bars<0) return(-1);
//----
if(counted_bars>0) counted_bars--;
int limit=Bars-counted_bars;
//----
for(int i=0; i<limit; i++)
{

ad1=iCustom(Symbol1,0,"WAD",1,i);

ExtMapBuffer1[i]=ad1;
}
//----
for(i=0; i<limit; i++)
ExtMapBuffer2[i]=iMAOnArray(ExtMapBuffer1,Bars,SignalMA_Period,0,SignalMA_Method,i);
//----
return(0);
}
//+------------------------------------------------------------------+


Williams 표시기는 내 시스템에서 WAD로 명명됩니다.

그러나 불행히도 표시기가 있는 빈 창이 표시됩니다(즉, 창에 표시기가 없습니다 ... 빌드되지 않음).


이 문제를 해결하는 방법, 가능한 경우 알려주십시오.

미리 감사드립니다.

 
Morzh09 писал(а) >>

좋은 오후입니다.

iCustom 기능을 올바르게 사용하는 방법을 알려주시겠습니까?

예를 들어 지표가 있습니다.

"Williams의 누적/분포, WA/D - Larry Williams의 누적/분포"( https://www.mql5.com/en/code/7064 )


iCustom 기능을 사용하여 다른 표시기에서 이 표시기에 액세스하고 싶습니다.


ad1=iCustom(Symbol1,0,"WAD", 1 ,i);


Williams 표시기는 내 시스템에서 WAD로 명명됩니다.

그러나 불행히도 표시기가 있는 빈 창이 표시됩니다(즉, 창에 표시기가 없습니다 ... 빌드되지 않음).

이 문제를 해결하는 방법, 가능한 경우 알려주세요.

미리 감사드립니다.

아마도 당신이 주소를 지정하는 버퍼가 아닐 것입니다. 아마도 0이 필요할 것입니다. 예, 표시기 매개변수가 분명히 필요합니다.

 

네. 다르게 처리해야 합니다

ad1=iCustom(Symbol1,0,"WAD",0,i); 
 

이 기능을 발견했습니다:

오픈 메타에디터,

소스 코드에서 외부 변수의 값을 변경하고,

엮다,

터미널을 엽니 다 - 동일한 고문이 이미 차트에 매달려 있지만 외부 변수의 이전 값으로 시작합니다!

Expert Advisor를 실행하여 컴파일하면 값이 업데이트됩니다.

초기화 시 #define 과 reassignment 를 통해 문제를 해결할 수 있는데, 어쩐지 서툴다...

분명히 터미널은 고문의 외부 변수의 오래된 값을 어딘가에 저장하지만 찾지 못했습니다.

이것은 무엇을 의미하며 어떻게 처리합니까?

 
beruk >> :

이 기능을 발견했습니다:

오픈 메타에디터,

소스 코드에서 외부 변수의 값을 변경하고,

엮다,

터미널을 엽니 다 - 동일한 고문이 이미 차트에 매달려 있지만 외부 변수의 이전 값으로 시작합니다!

Expert Advisor를 실행하여 컴파일하면 값이 업데이트됩니다.

초기화 시 #define 과 reassignment 를 통해 문제를 해결할 수 있는데, 어쩐지 서툴다...

분명히 터미널은 고문의 외부 변수의 오래된 값을 어딘가에 저장하지만 찾지 못했습니다.

이것은 무엇을 의미하며 어떻게 처리합니까?


값은 프로필/(선택한 프로필) 폴더에 확장자가 chr인 그래프 파일에 저장됩니다.
 
xeon писал(а) >>

값은 프로필/(선택한 프로필) 폴더에 확장자가 chr인 그래프 파일에 저장됩니다.

바로 그거죠!

그러나 내가 이해하는 한 아무 것도 할 수 없으며 필요한 경우 #define을 통해 재할당하는 것이 가장 좋은 방법입니까?

 

친구 여러분, 이 문제에 대해 말씀해 주십시오.


거래 분석을 위해 미국 및 유럽 채권의 시세를 사용하고 싶지만 브로커가 제공하지 않습니다...


그러한 상황에서 내가 이해하는 한 두 가지 방법이 가능합니다.


1. 브로커 변경

2. 외부 소스에서 Metatrader 플랫폼으로 견적 가져오기 .


이와 관련하여 2가지 질문이 있습니다.


I. 견적을 다운로드할 수 있는 곳:


1) 미국 10년 T-노트

2) 유로 분드


Metatrader 플랫폼으로 가져오는 방법은 무엇입니까?


Ⅱ. 어떤 브로커가 이러한 상품 거래를 제공합니까?

(광고로 인식되지 않도록 두 번째 질문은 개인정보로 작성해주세요)


미리 감사드립니다.
 

여기서 무슨 일이야?

간단히 말해서, 이 어드바이저를 시간별 차트에 첨부하고, 시간 시작 시 가격이 cn1보다 높고 현재 가격이 8포인트를 초과하지 않으면 주문이 시작되어야 합니다(가격이 아래인 경우에도 현재 수준) 그리고 어떤 이유로 즉시 나를 위해 자리를 엽니다 . 왜요?

  int i=0;
   double a,b;
   while (i==0)
   {
     a=MarketInfo("USDCAD", MODE_ASK);
     b=MarketInfo("USDCAD", MODE_BID); 
     if((Open[0]<cn1)&&((a-cn1)<0.0008))
      {
       OrderSend("USDCAD",OP_BUY,1,a,1,SL,cn2);
       i=1;
       }
     if((Open[0]>cn11)&&((cn11-b)<0.0008))
      {
       OrderSend("USDCAD",OP_SELL,1,b,1,SL1,cn21);
       i=1;
      }  
   }