바로 그 특성이 지표의 전체 아이디어일 뿐입니다. 그리고 동시에 MQL을 연습합니다. 나는 스스로 작업을 생각해 냈고 직관적으로 언어로 구현하는 것이 그다지 복잡하지 않다는 것을 이해합니다. 나는 앉아서 시도합니다.
따라서 특성의 본질은 두 단방향 볼륨의 특정 고정 이론 수준을 실제 수준과 비교하는 것입니다. 즉, 실제 "개방" 간격에 대한 두 거래량의 합계의 실제 비율이 주어진 이론상 값보다 높으면 계산된 두 거래량의 차이 형태로 실제 두 번째 거래량에 "보너스"를 추가합니다. 이론 및 실제 결과. 실제 수준이 이론 수준보다 낮으면 두 번째 막대의 볼륨에서 동일한 차이를 뺍니다. 설명이 명확했나요?
만일을 대비하여 이 특성을 공개할 때 괄호를 잘못 꽂은 것 같아서 서둘러서 말씀드립니다.
또한 귀하가 내 것과 동일하다고 생각하는 라인이 0으로 나눗셈으로 이어질 것 같습니다. 이제 확인하겠습니다.
분명히. 그러나 2(두 권 사이의 평균)와 UP12 변수에서 계산된 것이 어떻게 상호 연결되는지는 분명하지 않습니다. 결국, 하나와 다른 하나의 치수는 다릅니다. 분모의 시간과 가격. 결국, 학교에서도 미터와 킬로그램은 어떤 식으로든 더할 수 없다고 배웠습니다! :)))))
바로, 옳지 않다! :)))) 분수의 형태로 공식화하는 것과 다른 것이 모두 한 줄에 있고 어떻게 ... 명확하지 않은지 ... 이것은 서두르지 않고 부주의 ...
또한 코드를 잘못 최적화했습니다. 다시 말하지만, 수학에 오류가 있습니다. 대괄호를 잊어 버렸습니다.
이 지점의 전문가(특히 Roman)의 귀중한 도움 덕분에 테스터에 +를 표시하는 간단한 Expert Advisor를 만들 수 있었습니다. 질문 : 실제에 넣을 수 있는지 여부를 결정하는 방법은 무엇입니까? 기준이 있나요?
예, 적절한 조직 결정을 내리는 전문가와 가능한 오류를 유능하게 처리하는 형태로 "기본" 항목(실제로 선명하게 - 연결 끊기 및 추가 회선으로 전환에 대한 제어는 고려하지 않음)을 어떤 기준으로 설정합니까? 추가 작업, 필수 데모, 마이크로 리얼 ... 결과에 만족하면 "모두 나가십시오"... :-))) 먼저 교과서 에서 고문의 오류 처리를 분석하십시오. 주문하기 전에 거래 작업을 수행할 때 요구 사항 및 제한 사항을 확인하는 것을 잊지 마십시오. 검색에서 Google을 통해 다음과 같이 입력하십시오. 다음과 같은 유사한 기능을 수행 하는 전문가가 있습니다.
// После старта
if (! IsTradeAllowed () || IsTradeContextBusy () || ! IsConnected ()) return ; // если торговля невозможна, то выходим
작업을 위한 주문 선택 확인
if (ticket> 0 ) // Если позиция открылась
{
while ( OrderSelect (ticket,SELECT_BY_TICKET)==false) Sleep ( 1000 ); // Если ордер выбранdouble OpenPrice= OrderOpenPrice ();
...
처음에는
color ColorBuy = Blue , ColorSell = Red ;
bool UseSound = true;
string alert.wav;
color clr, ClrClose = Gray ;
int Level_new;
double price;
bool result, Buy_signal=false, Sell_signal=false;
int orderIndex;
bool IsExpertFailed = false;
bool IsExpertStopped = false;
double lots; // вспомогательная переменная для расчета нового размера лота double Lots_New; // Количество лотов для новых ордеровint ticket; // Номер ордераdouble orderLots; // Lots double orderProfit; // Profitdouble Price; // Цена открытия рыночного ордераdouble SL; // Значение StopLoss ордераdouble TP; // Значение TakeProfit ордераstaticdatetime prevtime = 0 ; // по ценам открытияint init(){
IsExpertStopped = false;
if (! IsTradeAllowed ())
{
Comment ( "Необходимо разрешить советнику торговать" );
IsExpertStopped = true;
return ( 0 );
}
if (! IsTesting ())
{
if ( IsExpertEnabled ()) Comment ( "Советник запустится следующим тиком" );
elseComment ( "Отжата кнопка \"Разрешить запуск советников\"" );
}
...
return ( 0 );
}
모든 것, IMHO, 우선, 오랫동안 계속할 수 있습니다 ...
어쨌든 "매니저"의 통제가 필요합니다 ... :-R병합 된 예금에 대해 극도로 고통스럽지 않도록 ...
"이것은 현재 통화 쌍에 대한 모든 것입니다. 정수 시작() { double M_0, M_1, // 0 및 1 막대의 MAIN 값 S_0, S_1; // 0 및 1 막대의 신호 값 //------------------------------------------------ -------------------- // tech.indicator 함수를 호출합니다. M_0 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN, 0);// 0 bar M_1 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN, 1);// 1 bar S_0 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_SIGNAL,0);// 0 bar S_1 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_SIGNAL,1);// 1 bar //------------------------------------------------ --------------------
if( M_1 < S_1 && M_0 >= S_0 ) // 조건 1: 녹색이 아래에서 빨간색과 교차합니다.
if( M_1 > S_1 && M_0 <= S_0 ) // 조건 2: 녹색이 위에서 빨간색과 교차합니다.
//------------------------------------------------ -------------------- 반품; // start()에서 종료 }"
전반적으로 신경 쓰지 마세요. IMHO, 스케일링이 저자에게 전송되었습니다. 그는 그것을 알아낼 것입니다 ... :-P
분명히. 그러나 2(두 권 사이의 평균)와 UP12 변수에서 계산된 것이 어떻게 상호 연결되는지는 분명하지 않습니다. 결국, 하나와 다른 하나의 치수는 다릅니다. 분모의 시간과 가격. 결국, 학교에서도 미터와 킬로그램은 어떤 식으로든 더할 수 없다고 배웠습니다! :))))
바로, 옳지 않다! :)))) 분수의 형태로 공식화하는 것과 다른 것이 모두 한 줄에 있고 어떻게 ... 명확하지 않은지 ... 이것은 서두르지 않고 부주의 ...
또한 코드를 잘못 최적화했습니다. 다시 말하지만, 수학에 오류가 있습니다. 대괄호를 잊어 버렸습니다.
MaxZ, 서둘러, 오 서둘러 :))) 결론과 함께!
나는 킬로미터와 킬로그램을 더하지 않았습니다. 실생활의 예. 오늘의 유로달러, 5분. 나는 2개의 성장하는 양초 가 연속으로 있는 차트를 찔렀습니다.
vback1=703, d볼륨=696. (vback1+d볼륨)/2=699.5.
동일한 양초에 대해 (Close[i]-Open[i+1] )*1000=(1.42911-1.42549)*1000=3.62
(vback1+d볼륨)/3.62=386.5
총계: 696+699.5-386.5=1009. 그려야 할 것. 그리고 1009라는 표시기가 이 위치에 표시됩니다. 글쎄, 등등.
또 다른 것은 여기에서 이 예제를 계산한 결과 코드에 포함된 공식에 따라 이전 게시물에서 설명한 일이 일어나지 않는다는 것을 스스로 발견했다는 것입니다. 사실 그것은 다른 이데올로기, 일종의 자율규제임이 밝혀졌다. vrealUP12 매개변수의 마이너스 값이 dVolume+vteor12의 합을 초과하지 않는 한 마지막 볼륨까지 증가합니다. 또는 추가 계산 매개변수 ExtVolumesBuffer[i]를 입력해야 합니다.
변수 vrealUP12는 부피와 가격의 비율 차원을 갖습니다(이것은 우리의 킬로그램입니다).
그리고 결국 미터와 킬로그램의 합인 특성을 계산합니다. 이것이 바로 우리가 말하는 것입니다! ;디
좋아요, 다르게 보도록 하겠습니다.
vteor12는 (dVolume+vback1)/k1(인자 1)로 쓸 수 있습니다.
vrealUP12는 (dVolume+vback1)/k2(인자 2)로 쓸 수 있습니다.
이미 지표의 이데올로기를 설명하려고 하였듯이 이론적인 수준과 실제 수준을 비교하는 것으로 구성되어 있습니다. 이러한 수준을 얻기 위해 동일한 값(dVolume + vback1)(즉, 나누기)을 특정 이론 값(k1) 및 실제 값(k2)과 비교합니다. 우리가 스페이드라고 부르는 경우 나는 단지 k1을 구성하고 있음을 이해합니다. 또는 당신이 원한다면, 나는 가정합니다. 이제 무언가와 비교해야합니다. 이 문제에서 차트 자체보다 더 객관적이고 진실한 것은 없습니다. 그러므로 나는 여는 것과 닫는 것의 차이를 주어진 시간의 최종 결과로 인식한다. 그리고 여기에는 동일한 비트 깊이를 가져오는 단 하나의 작업이 있습니다. 이것이 1000을 곱한 이유입니다.
계산기를 사용하여 인접한 양초에 대한 몇 가지 다른 옵션을 계산해 보세요. 이 매우 간단한 공식을 사용하여 다양한 결과에 놀랄 수 있습니다.
그리고 학교 논리의 관점에서 보면 당신이 옳습니다. 학교에서 허용되지 않는 Volume + Volume/Price를 추가합니다. :))
귀하의 답변에 감사드리며 귀하의 질문에 답변해 드리겠습니다.
바로 그 특성이 지표의 전체 아이디어일 뿐입니다. 그리고 동시에 MQL을 연습합니다. 나는 스스로 작업을 생각해 냈고 직관적으로 언어로 구현하는 것이 그다지 복잡하지 않다는 것을 이해합니다. 나는 앉아서 시도합니다.
따라서 특성의 본질은 두 단방향 볼륨의 특정 고정 이론 수준을 실제 수준과 비교하는 것입니다. 즉, 실제 "개방" 간격에 대한 두 거래량의 합계의 실제 비율이 주어진 이론상 값보다 높으면 계산된 두 거래량의 차이 형태로 실제 두 번째 거래량에 "보너스"를 추가합니다. 이론 및 실제 결과. 실제 수준이 이론 수준보다 낮으면 두 번째 막대의 볼륨에서 동일한 차이를 뺍니다. 설명이 명확했나요?
만일을 대비하여 이 특성을 공개할 때 괄호를 잘못 꽂은 것 같아서 서둘러서 말씀드립니다.
또한 귀하가 내 것과 동일하다고 생각하는 라인이 0으로 나눗셈으로 이어질 것 같습니다. 이제 확인하겠습니다.
분명히. 그러나 2(두 권 사이의 평균)와 UP12 변수에서 계산된 것이 어떻게 상호 연결되는지는 분명하지 않습니다. 결국, 하나와 다른 하나의 치수는 다릅니다. 분모의 시간과 가격. 결국, 학교에서도 미터와 킬로그램은 어떤 식으로든 더할 수 없다고 배웠습니다! :)))))
바로, 옳지 않다! :)))) 분수의 형태로 공식화하는 것과 다른 것이 모두 한 줄에 있고 어떻게 ... 명확하지 않은지 ... 이것은 서두르지 않고 부주의 ...
또한 코드를 잘못 최적화했습니다. 다시 말하지만, 수학에 오류가 있습니다. 대괄호를 잊어 버렸습니다.
당신의 스타일은 전혀 거기에 없습니다 ... 완전히 잘못된 거래 기준에 대한 질문은 STO-HAS-TI-KE에 관한 것입니다 ... :-P
질문은 이랬습니다.
평생 아이디어 :
그리고 여기 STOHASTEG??? :)))))
필요한 모든 확인이 이미 이루어졌으며 거래 신호가 형성되었는지 여부.
안녕하세요!
이 지점의 전문가(특히 Roman)의 귀중한 도움 덕분에 테스터에 +를 표시하는 간단한 Expert Advisor를 만들 수 있었습니다. 질문 : 실제에 넣을 수 있는지 여부를 결정하는 방법은 무엇입니까? 기준이 있나요?
예, 적절한 조직 결정을 내리는 전문가와 가능한 오류를 유능하게 처리하는 형태로 "기본" 항목(실제로 선명하게 - 연결 끊기 및 추가 회선으로 전환에 대한 제어는 고려하지 않음)을 어떤 기준으로 설정합니까? 추가 작업, 필수 데모, 마이크로 리얼 ... 결과에 만족하면 "모두 나가십시오"... :-))) 먼저 교과서 에서 고문의 오류 처리를 분석하십시오. 주문하기 전에 거래 작업을 수행할 때 요구 사항 및 제한 사항을 확인하는 것을 잊지 마십시오. 검색에서 Google을 통해 다음과 같이 입력하십시오. 다음과 같은 유사한 기능을 수행 하는 전문가가 있습니다.
작업을 위한 주문 선택 확인
처음에는
모든 것, IMHO, 우선, 오랫동안 계속할 수 있습니다 ...
어쨌든 "매니저"의 통제가 필요합니다 ... :-R 병합 된 예금에 대해 극도로 고통스럽지 않도록 ...
최대 Z :
질문은 이랬습니다.
그리고 여기 STOHASTEG??? :)))))
필요한 모든 확인이 이미 이루어졌으며 거래 신호가 형성되었는지 여부.
직접적인 질문이 있었습니다.
"이것은 현재 통화 쌍에 대한 모든 것입니다.
정수 시작()
{
double M_0, M_1, // 0 및 1 막대의 MAIN 값
S_0, S_1; // 0 및 1 막대의 신호 값
//------------------------------------------------ --------------------
// tech.indicator 함수를 호출합니다.
M_0 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN, 0);// 0 bar
M_1 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN, 1);// 1 bar
S_0 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_SIGNAL,0);// 0 bar
S_1 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_SIGNAL,1);// 1 bar
//------------------------------------------------ --------------------
if( M_1 < S_1 && M_0 >= S_0 ) // 조건 1: 녹색이 아래에서 빨간색과 교차합니다.
if( M_1 > S_1 && M_0 <= S_0 ) // 조건 2: 녹색이 위에서 빨간색과 교차합니다.
//------------------------------------------------ --------------------
반품; // start()에서 종료
}"
전반적으로 신경 쓰지 마세요. IMHO, 스케일링이 저자에게 전송되었습니다. 그는 그것을 알아낼 것입니다 ... :-P
Roman. :
처음에는
IsExpertStopped 변수의 목적은 무엇입니까? 그리고 로그의 모든 틱에는 " 어드바이저가 거래를 허용 해야 합니다"라는 메시지가 나타납니다...
IsExpertStopped 변수의 목적은 무엇입니까? 그리고 로그의 모든 눈금에는 "어드바이저가 거래를 허용해야 합니다"라는 메시지가 나타납니다...
나는 이것을 좋아한다:
F1 클릭
IsTradeAllowed ()
알아보세요... :P
즉 "
F1 클릭
알아보세요... :P
즉 "
그것은... 오늘 완전히 정신이 산만해졌어요. 나는 init()를 보았지만 start()에 대해 생각합니다! :))))))
분명히. 그러나 2(두 권 사이의 평균)와 UP12 변수에서 계산된 것이 어떻게 상호 연결되는지는 분명하지 않습니다. 결국, 하나와 다른 하나의 치수는 다릅니다. 분모의 시간과 가격. 결국, 학교에서도 미터와 킬로그램은 어떤 식으로든 더할 수 없다고 배웠습니다! :))))
바로, 옳지 않다! :)))) 분수의 형태로 공식화하는 것과 다른 것이 모두 한 줄에 있고 어떻게 ... 명확하지 않은지 ... 이것은 서두르지 않고 부주의 ...
또한 코드를 잘못 최적화했습니다. 다시 말하지만, 수학에 오류가 있습니다. 대괄호를 잊어 버렸습니다.
MaxZ, 서둘러, 오 서둘러 :))) 결론과 함께!
나는 킬로미터와 킬로그램을 더하지 않았습니다. 실생활의 예. 오늘의 유로달러, 5분. 나는 2개의 성장하는 양초 가 연속으로 있는 차트를 찔렀습니다.
vback1=703, d볼륨=696. (vback1+d볼륨)/2=699.5.
동일한 양초에 대해 (Close[i]-Open[i+1] )*1000=(1.42911-1.42549)*1000=3.62
(vback1+d볼륨)/3.62=386.5
총계: 696+699.5-386.5=1009. 그려야 할 것. 그리고 1009라는 표시기가 이 위치에 표시됩니다. 글쎄, 등등.
또 다른 것은 여기에서 이 예제를 계산한 결과 코드에 포함된 공식에 따라 이전 게시물에서 설명한 일이 일어나지 않는다는 것을 스스로 발견했다는 것입니다. 사실 그것은 다른 이데올로기, 일종의 자율규제임이 밝혀졌다. vrealUP12 매개변수의 마이너스 값이 dVolume+vteor12의 합을 초과하지 않는 한 마지막 볼륨까지 증가합니다. 또는 추가 계산 매개변수 ExtVolumesBuffer[i]를 입력해야 합니다.
그리고 라인에서
나는 즉시로 돌아왔다.
double vrealUP12=(dVolume+vback1)/UP12;
길어지지 않게.
MaxZ, 서둘러, 오 서둘러 :)))) 결론으로!
나는 킬로미터와 킬로그램을 더하지 않았습니다. 실생활의 예. 오늘의 유로달러, 5분. 나는 2개의 성장하는 양초가 연속으로 있는 차트를 찔렀습니다.
젠장 ... 추가 및 방법! :))
변수 vteor12의 차원은 Volumes(우리의 미터임)입니다.
vteor12=(dVolume+vback1)/ 2 ;
UP12 변수에는 일부 통화 쌍에 대한 포인트 차원이 있습니다.
변수 vrealUP12는 Volumes 대 Points 비율의 차원을 갖습니다(이것은 Our 킬로그램입니다).
그리고 결국 미터와 킬로그램의 합인 특성을 계산합니다. 이것이 바로 우리가 말하는 것입니다! ;디
2개만 20점이 아닌 경우 이론상 통과해야 하는 2개의 막대 가격! :)) 그러나 이것은 이미 일종의 넌센스입니다 ...
그리고 라인에서
나는 즉시로 돌아왔다.
double vrealUP12=(dVolume+vback1)/UP12;
길어지지 않게.
늘이기는 때때로 유용합니다. 컴퓨터 리소스를 절약합니다! :))) 이 추가 변수는 무엇을 위한 것입니까?
젠장 ... 추가 및 방법! :))
변수 vteor12의 차원은 Volumes(우리의 미터임)입니다.
변수 UP12에는 차원 가격이 있습니다.
변수 vrealUP12는 부피와 가격의 비율 차원을 갖습니다(이것은 우리의 킬로그램입니다).
그리고 결국 미터와 킬로그램의 합인 특성을 계산합니다. 이것이 바로 우리가 말하는 것입니다! ;디
좋아요, 다르게 보도록 하겠습니다.
vteor12는 (dVolume+vback1)/k1(인자 1)로 쓸 수 있습니다.
vrealUP12는 (dVolume+vback1)/k2(인자 2)로 쓸 수 있습니다.
이미 지표의 이데올로기를 설명하려고 하였듯이 이론적인 수준과 실제 수준을 비교하는 것으로 구성되어 있습니다. 이러한 수준을 얻기 위해 동일한 값(dVolume + vback1)(즉, 나누기)을 특정 이론 값(k1) 및 실제 값(k2)과 비교합니다. 우리가 스페이드라고 부르는 경우 나는 단지 k1을 구성하고 있음을 이해합니다. 또는 당신이 원한다면, 나는 가정합니다. 이제 무언가와 비교해야합니다. 이 문제에서 차트 자체보다 더 객관적이고 진실한 것은 없습니다. 그러므로 나는 여는 것과 닫는 것의 차이를 주어진 시간의 최종 결과로 인식한다. 그리고 여기에는 동일한 비트 깊이를 가져오는 단 하나의 작업이 있습니다. 이것이 1000을 곱한 이유입니다.
계산기를 사용하여 인접한 양초에 대한 몇 가지 다른 옵션을 계산해 보세요. 이 매우 간단한 공식을 사용하여 다양한 결과에 놀랄 수 있습니다.
그리고 학교 논리의 관점에서 보면 당신이 옳습니다. 학교에서 허용되지 않는 Volume + Volume/Price를 추가합니다. :))