MMA_Breakout_strategy_volume I(MM 또는 MF 제외) - WhooDoo22에 의해 코딩됨 - 페이지 3

 
다른 버전 으로 이동 하기 전에 이 스레드의 주제인 코드를 수정하지 않겠습니까? . . 당신이 그랬다면 당신은 많은 것을 배울 것입니다.
 
사이먼,


또 다른 점 . . .

RE: 볼륨 I/II의 거래 능력과 가치에 대한 내 생각을 확인하기 위해 모든 것을 함께 패치할 수 있는 가장 빠른 코딩 방법을 강조하는 것이 중요합니다. 내 인생에서 처음으로 모든 것을 "올바르게" 코딩하기 위해 여유를 가질 충분한 시간이 없습니다. 일반적으로 프로젝트를 단계적으로 시작합니다. 예: 1단계. 모든 기능적 기반 덮기, 2단계. 코드 정리, 3. EA의 외부 시각적 측면에 아름다움 추가. 현재 저는 여전히 1단계에서 일하고 있습니다. 이 EA에는 일반적인 보내기 주문인 마감 주문 EA보다 훨씬 더 많은 것이 있습니다. 많은 시간과 생각이 테스트에 투입되었습니다. 테스트는 볼륨 I의 진화에 따라 통과될 것입니다. 나는 당신이 그 독창성을 인정할 것이라고 확신합니다.

즉, 첫 번째 OrderSend() 함수 에 대해 "볼 롤링"을 위한 다른 옵션을 고려하고 있습니다. 나는 아직 마녀의 방향을 잘 모르겠습니다. 궁극적으로 "if(OrdersHistoryTotal()==0){" 조건을 신뢰할 수 있는 조건으로 완전히 대체하겠습니다. 당신은 이것에 약간의 생각을 주기 위해 중요한 요점을 만들었습니다. 귀하의 격려에 감사드립니다.

고맙습니다.

 
RaptorUK :

변수는 무엇입니까? 당신 이것을 할 때 어떻게 티켓 번호가 될 수 있습니까?

현재 4개의 실시간 거래가 있으며 티켓 번호가 순차적이지 않습니다. . .

등호는 varlble을 가치 있는 것으로 만들어야 합니다. 하지만 그것은 무엇입니까? 나는 당신이 의미하는 바를 알고 있다고 생각합니다. 어떻게 가능한가요? ++는 좋은 질문입니다.
 
WhooDoo22 :
사이먼,


또 다른 점 . . .

RE: 볼륨 I/II의 거래 능력과 가치에 대한 내 생각을 확인하기 위해 모든 것을 함께 패치할 수 있는 가장 빠른 코딩 방법을 강조하는 것이 중요합니다. 나는 처음으로 모든 것을 "올바르게" 코딩하기 위해 여유를 가질 시간이 충분하지 않습니다.

최소한 기능적 으로 올바르게 작동하도록 해야 합니다. . . 이 코드는 그것과는 거리가 멉니다. 내가 말했다. . . . 그것은 옳지 않습니다, 당신은 선택이 있습니다. 당신은 당신의 코드를 계속 작성할 수 있고 당신이 ST를 실행할 때 GB의 오류를 가질 수 있고 코드가 Live 또는 Demo에서 작동하지 않을 것입니다. . . 당신이 원하는 경우.
 

사이먼,

당신은 적어도,..

RE: 목표에 도달하는 데 시간이 얼마나 걸릴지는 걱정하지 않고 프로젝트 가 완료될 때까지 계속 쟁기질을 하고 있습니다. 제 선택은 GB의 오류가 발생하지 않는 것입니다. :) 저는 오히려 코딩 동료의 건설적인 비판에 귀를 기울이고 제시된 코딩 문제에 대한 솔루션에 응답하고 보답하겠습니다. 이러한 솔루션은 볼륨 I/II에 대해 잠재적으로 더 적은 오류를 생성할 수 있습니다.

고맙습니다.

 
WhooDoo22 :

사이먼,

당신은 적어도,..

RE: 목표에 도달하는 데 시간이 얼마나 걸릴지는 걱정하지 않고 프로젝트가 완료될 때까지 계속 쟁기질을 하고 있습니다. 제 선택은 GB의 오류가 발생하지 않는 것입니다. :) 저는 오히려 코딩 동료의 건설적인 비판에 귀를 기울이고 제시된 코딩 문제에 대한 솔루션에 응답하고 보답하겠습니다. 이러한 솔루션은 볼륨 I/II에 대해 잠재적으로 더 적은 오류를 생성할 수 있습니다.

고맙습니다.



RaptorUK가 거기에 준 것은 건설적인 비판이었고 코드에 대한 보답입니다 .
 

Simon, 이 문제를 해결하기 위해 부울 변수를 사용하겠습니다. 이 부울 조건은 2단계에 도달할 때까지 이 문제를 해결할 일반적인 솔루션입니다. 그런 다음 1차 전송 신호에 내 코딩 스타일을 반영하는 고유한 조건을 부여할 수 있습니다. 입력해 주셔서 감사합니다.

 
WhooDoo22 :

Simon, 이 문제를 해결하기 위해 부울 변수를 사용하겠습니다. 이 부울 조건은 2단계에 도달할 때까지 이 문제를 해결할 일반적인 솔루션입니다. 그런 다음 1차 전송 신호에 내 코딩 스타일을 반영하는 고유한 조건을 부여할 수 있습니다. 입력해 주셔서 감사합니다.

아니, 그렇지 않습니다. . . 당신의 코딩은 당신이 이해하지 못한다는 것을 보여줍니다. 이해하지 못하면 고칠 수 없습니다.
 

사이먼, 나는 내가 이해 한다고 믿습니다. 당신은 내가 이해하지 못한다고 생각하는 것이 무엇입니까?

지금까지 우리는 두 가지 중요한 사항에 대해 논의했습니다.

1. 비상 SL 코드 블록을 수정합니다.

2. "if (OrdersHistoryTotal()==0{") 현재 조건을 제거하고 조건을 다른 조건으로 바꿉니다(내 현재 솔루션은 현재 조건을 부울 조건으로 대체하여 주문 전송을 시작하는 것입니다.).

 //example

if (x== false ){ OrderSend ()...; x= true ;}

/* now, x is true and the code block will not execute again. Of course, I would add code to save variables and if connection 
   is lost from the terminal server, all variables are saved. Simple.
   I understand the code is incorrect, but I wrote this for you to understand its concept, not a completely typed up code. */

변수를 저장하는 이 아이디어는 서버 연결 해제에 대한 일반적인 솔루션이며 ubzen에서 제안했습니다. 나는 이 아이디어에 대해 그에게 공을 돌린다.

고맙습니다.

 
WhooDoo22 :

사이먼, 나는 내가 이해 한다고 믿습니다. 당신은 내가 이해하지 못한다고 생각하는 것이 무엇입니까?

start() 함수의 첫 번째 줄은 this 입니다. . .

   OrderSelect (ticket,SELECT_BY_TICKET,MODE_TRADES);

. . . 어떤 티켓 번호를 선택하고 있습니까? well 티켓은 초기 변수 설정 없이 선언되었으므로 0 이 될 것이므로 즉시 티켓 0 을 선택하려고 하면 오류가 생성됩니다. 이 OrderSend() 에서 반환 값을 확인하면 다음과 같이 표시됩니다. 아마도 오류 4108 ERR_INVALID_TICKET 일 것입니다. . . OrderSend()를 올바르게 사용하는 방법을 이해했다면 왜 이것을 하시겠습니까?


당신이 OrderHistoryTotal()을 이해했다면 당신이 했던 방식으로 그것을 사용하지 않았을 것이고 그렇다고 말하지도 않았을 것입니다. . . " 고유 티켓 변수의 거래 내역 검색만, "

{ } 중괄호가 작동하는 방식을 이해했다면 불필요한 중괄호를 추가하지 않았을 것입니다. . . 그들은 아무 것도 추가하지 않으며 코드를 더 깔끔하고 읽기 쉽게 만들지 않습니다.

 if (OrderType()==OP_BUY)                                                                     
      {
         {
         OrderModify(ticket, 0 ,OrderOpenPrice()- 5000 * Point , 0 , 0 ,Blue
         }
      }

로 대체할 수 있습니다. . .

 if (OrderType()==OP_BUY)  
   OrderModify(ticket, 0 ,OrderOpenPrice()- 5000 * Point , 0 , 0 ,Blue);

변수 i 를 티켓 번호로 사용하면 티켓 번호가 전략 테스터 외부, 즉 데모 또는 라이브 계정에서 어떻게 작동하는지 이해하지 못한다는 것을 알 수 있습니다. . .


거래 기능이 작동했는지 실패했는지 확인하지 않습니다. 코드에서 다음을 사용하기 때문에 이것이 중요합니다. . .

ticket = OrderSend ( Symbol (),OP_BUY, 0.05 ,Ask, 30 , 0 , 0 , "" , 0 , 0 ,Blue);

. . . OrderSend()가 실패하면 티켓 이 -1이 되고 나중에 이 변수를 사용하여 티켓 번호 -1로 선택하고 주문하려고 하면 분명히 실패합니다. . .

사유: