void CalculateSimpleMA( int rates_total, int prev_calculated, constdouble &price[])
{
int i,limit;
//--- first calculation or number of bars was changedif (prev_calculated== 0 )
{
limit=InpMAPeriod;
//--- calculate first visible valuedouble firstValue= 0 ;
for (i= 0 ; i<limit; i++)
firstValue+=price[i];
firstValue/=InpMAPeriod;
ExtLineBuffer[limit- 1 ]=firstValue;
ExtLineBufferFid[ 1 ]=(firstValue*InpMAPeriod-price[i-InpMAPeriod])/i- 1 ; Добрый человек предоставил вот такую реализацию(sma99[i]=(sma100[i]*100-d[i-100])/99;), но что то не выходит!
배열의 범위를 벗어나면 혼동되지 않습니까?
바로 여기에:
또한 "보여주고 싶지 않다"는 것이 아니라 모든 것이 낮다[1].
제안 - 해결 방법은 무엇입니까?
이 스크립트에서 원하는 것을 인간적인 관점에서 설명하시겠습니까?
하루의 시작부터 현재까지 의 볼륨 표시기의 최저/최고 값을 찾습니다.
새로운 더 높은/낮은 값을 먹으면 마지막 값을 기억합니다.
사악한 삶,
관심을 가져주셔서 감사합니다 :)
하루의 시작부터 현재까지의 볼륨 표시기의 최저/최고 값을 찾습니다.
새로운 더 높은/낮은 값을 먹으면 마지막 값을 기억합니다.
아마도 다음과 같이 더 좋을 것입니다.
내 댓글에 아무것도 표시되지 않고 정상적으로 인쇄됩니다 ...
안녕하세요, 반복해서 죄송합니다만, 질문이 재미있습니다!)
계산 방법:
이동 기간(예: -16)이 있으면 기간 16부터 시작하여 기간 15를 계산합니다.
아마도 다음과 같이 더 좋을 것입니다.
내 댓글에 아무것도 표시되지 않고 정상적으로 인쇄됩니다 ...
안녕하세요 evllive님
물론 가능하지만 저는 필요하지 않고 어레이를 통해 필요합니다.
voidOnStart를 사용하고 있고 intstart를 사용하고 있기 때문에 주석이 표시되지 않습니다.
최근 첨부된 댓글 파일 내부에 불가리아어로 작성된 내용입니다.
오늘은 토론한 내용을 살펴보겠습니다.
주목 해 주셔서 감사합니다.
추신: 다른 파일을 추가했습니다.
파일 H_L- 첫 번째 표시기, 바디 전문가의 파일 file_6이지만 그리기만 가능합니다.
아마도 다음과 같이 더 좋을 것입니다.
내 댓글에 아무것도 표시되지 않고 정상적으로 인쇄됩니다 ...
아직 어레이에 업로드하지 않았지만 모든 것을 외부 함수로 리메이크하면 할 것입니다.
볼륨의 경우 데이터의 형제가 필요한 경우 표시기 데이터의 첫 번째 창에 선을 그립니다. 코드를 이해합시다.
그래서 나는 볼륨 범위를 낮음, 중간, 높음으로 공식화합니다.
좋은 저녁이에요!
말해주세요, 제 첫 번째 조언자에게 무엇이 잘못되었는지 말해주세요. 골절 시 메시지를 표시하지 않음:
//------------------------------------------------ --------------------
extern int Period_MA=8 ; // 계산된 MA 기간
//------------------------------------------------ --------------------
int start() // 사양. 시작 기능
{
double MA_f, // 0 bar의 MA 값
MA_s, // 1 bar의 MA 값
MA_t, // 막대 2의 MA 값
//------------------------------------------------ --------------------
// tech.ind 함수를 호출합니다.
MA_f = iMA(NULL,0,Period_MA,0,MODE_SMA,PRICE_CLOSE,0);
MA_s = iMA(NULL,0,Period_MA,0,MODE_SMA,PRICE_CLOSE,1);
MA_t = iMA(NULL,0,Period_MA,0,MODE_SMA,PRICE_CLOSE,2);
//------------------------------------------------ --------------------
경우 (MA_t>MA_s<MA_f)
Alert("중간 하단 골절");// 메시지
if (MA_t<MA_s>MA_f)
Alert("위에서 가운데가 골절됨");// 메시지
//------------------------------------------------ --------------------
반품; // start()에서 종료
}
//------------------------------------------------ --------------------
고맙습니다!
안녕하세요, 반복해서 죄송합니다만, 질문이 재미있습니다!)
계산 방법:
이동 기간(예: -16)이 있으면 기간 16부터 시작하여 기간 15를 계산합니다.
Y(n+1)=(Y(n)*n+x[n+1])/(n+1), 여기서 Y(i)는 i 값 의 이동 평균 이고 x[i]는 값 i입니다. . 시계열에서와 같이 값의 번호 매기기.
이 모든 것이 왜 필요한지 이야기하면 매우 의무감을 느끼게 될 것입니다.