MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 1505

 
MakarFX :


당신의 답변에 감사드립니다. 그러나 나는 익숙하지 않은 많은 것들과 함께 이것을 계산하는 데 필요한 수식 문자열을 여전히 파악하지 못합니다. 여기에 입력해 주시겠습니까?

***

 
Порт-моне тв :

당신의 답변에 감사드립니다. 그러나 나는 익숙하지 않은 많은 것들과 함께 이것을 계산하는 데 필요한 수식 문자열을 여전히 파악하지 못합니다. 여기에 입력해 주시겠습니까?

***

물론이죠   코드 붙여넣기   정답: 게시물을 수정할 때 버튼을 누르세요.         암호 팝업 창에 코드를 붙여넣습니다.
MQL5.community - Памятка пользователя
MQL5.community - Памятка пользователя
  • www.mql5.com
Вы недавно зарегистрировались и у вас возникли вопросы: Как вставить картинку в сообщение на форуме, как красиво оформить исходный код MQL5, где находятся ваши Личные сообщения? В этой статье мы подготовили для вас несколько практических советов, которые помогут быстрее освоиться на сайте MQL5.community и позволят в полной мере воспользоваться доступными функциональными возможностями.
 

여기에서 계산을 잘못했는데, 그날의 손익 외에 하루의 시작에 계좌 잔고 가 필요합니다. :((( 돕다))

계정 잔액() - 지속적으로 변경됩니다. 예를 들어 Hour==1 에서 수정하는 방법은 무엇입니까?

 
Порт-моне тв :

당신의 답변에 감사드립니다. 그러나 나는 익숙하지 않은 많은 것들과 함께 이것을 계산하는 데 필요한 수식 문자열을 여전히 이해하지 못합니다. 여기에 입력해 주시겠습니까?

***

 //+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                    |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает суммарный профит в валюте депозита                  |
//|             закрытых с определённой даты позиций                           |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента             (""   - любой символ,         |
//|                                               NULL - текущий символ)       |
//|    op - операция                             (-1   - любая позиция)        |
//|    mn - MagicNumber                          (-1   - любой магик)          |
//|    dt - Дата и время в секундах с 1970 года  ( 0   - с начала истории)     |
//+----------------------------------------------------------------------------+
double GetProfitFromDateInCurrency( string sy= "" , int op=- 1 , int mn=- 1 , datetime dt= 0 )
  {
   double p= 0 ;
   int     i,k=OrdersHistoryTotal();

   if (sy== "0" ) sy= Symbol ();
   for (i= 0 ; i<k; i++) 
     {
       if ( OrderSelect (i,SELECT_BY_POS,MODE_HISTORY)) 
        {
         if ((OrderSymbol()==sy || sy== "" ) && (op< 0 || OrderType()==op)) 
           {
             if (OrderType()==OP_BUY || OrderType()==OP_SELL) 
              {
               if (mn< 0 || OrderMagicNumber()==mn) 
                 {
                   if (dt<OrderCloseTime()) 
                    {
                     p+=OrderProfit()+OrderCommission()+OrderSwap();
                    }
                 }
              }
           }
        }
     }
   return (p);
  }

이익계산...

오늘의 이익이 필요하다면

 datetime dt= iTime ( _Symbol , PERIOD_D1 , 0 );
 
Порт-моне тв :

여기에서 계산을 잘못했는데, 그날의 손익 외에 하루 의 시작에 계좌 잔고 가 필요합니다 . :((( 돕다))

계정 잔액() - 지속적으로 변경됩니다. 예를 들어 Hour==1 에서 수정하는 방법은 무엇입니까?

AccountBalance()-GetProfitFromDateInCurrency(.....)
 
Tatiana Zyrianova :
안녕하세요. OnChartEvent에서 처리되는 차트의 버튼을 눌러 표시기에서 Calculate 이벤트를 강제 실행할 수 있는지 알려주실 수 있습니까?

동일한 기호 및 시간 프레임을 가진 ChartSetSymbolPeriod 를 사용하여 차트를 업데이트할 수 있습니다(터미널의 새로 고침 명령과 유사). 차트를 업데이트하면 차트에 연결된 지표의 재계산이 트리거됩니다. 따라서 눈금이 없어도(예: 주말) 차트에서 지표를 계산할 수 있습니다.

 
MakarFX :

이익계산...

오늘의 이익이 필요하다면

내가 필요로 하는 것이 조금 아닙니다. "오늘의 이익이 오늘의 시작 시 계정 잔액 의 특정 비율(이미 계산됨)을 초과한 경우 초과할 때까지 거래를 중지하거나 그 반대의 경우도 마찬가지입니다. 그런 다음 거래(기능도 이미 있음) 아이디어가 있기를 정말 바랍니다.

하루를 시작할 때 계정의 잔액을 찾아야 합니다!!! Accountbalance는 지속적으로 변경되므로 사용할 수 없습니다. 아마도 특정 시간 동안 설정된 공식이 필요합니다. 예를 들어 00:01에.

 
Порт-моне тв :

찾았는데 오류가 뜨네요 수정좀 도와주세요

실수

   datetime TimeCheck_sb = StrToTime( "1:00" );
   if ( TimeCurrent ()==TimeCheck_sb)
     {
       AccountBalance() = sb1; sb1 = AccountBalance();
     }
 
Порт-моне тв :

내가 필요한 것이 아닙니다. "오늘의 이익이 오늘의 시작 시 계정 잔액 의 특정 비율(이미 계산됨)을 초과한 경우 초과할 때까지 거래를 중지하거나 그 반대의 경우도 마찬가지입니다. 그런 다음 거래(기능도 이미 있음) 아이디어가 있기를 정말 바랍니다.

하루를 시작할 때 계정의 잔액을 찾아야 합니다!!! Accountbalance는 지속적으로 변경되므로 사용할 수 없습니다. 아마도 특정 시간 동안 설정된 공식이 필요합니다. 예를 들어 00:01에.

나는 너에게 썼다

AccountBalance()-GetProfitFromDateInCurrency(.....)

현재 잔액에서 현재 날짜의 이익을 빼서 하루의 시작에 잔액을 얻습니다.

 
MakarFX :

나는 너에게 썼다

현재 잔액에서 현재 날짜의 이익을 빼서 하루의 시작에 잔액을 얻습니다.

봐, 문제는 내가 설정하고자 하는 백분율, 예를 들어 숫자로 (1%)가 변경되고 만약

AccountBalance()-GetProfitFromDateInCurrency(.....)

그러면 결과는 각각의 새 트랜잭션과 함께 BALANCE도 증가하고 1%도 증가하므로 FIXED SET VALUE가 없기 때문에 내 기능이 작동하지 않을 것입니다.