볼링 밴드 c #


볼링 밴드 C #
App Store를 통해 가져 오기 우리의 응용 프로그램 에서이 게시물을 읽으십시오!
이동 표준 편차를 효율적으로 계산하는 방법.
아래에서 각 포인트 (이동 평균, 상향 대역, 하향 대역)에 대해 Bollinger Band를 계산하는 C # 방법을 볼 수 있습니다.
여기서 볼 수 있듯이이 방법은 2 for 루프를 사용하여 이동 평균을 사용하여 이동 표준 편차를 계산합니다. 지난 n 기간 동안 이동 평균을 계산하기 위해 추가 루프를 포함했습니다. 이것은 루프의 시작 부분에서 total_average에 새로운 포인트 값을 추가하고 루프의 끝에서 i-n 포인트 값을 제거함으로써 제거 할 수 있습니다.
내 질문은 기본적으로 다음과 같습니다. 이동 평균으로 관리하는 것과 비슷한 방식으로 나머지 내부 루프를 제거 할 수 있습니까?
대답은 '예'입니다. 80 년대 중반에 저는 프로세스 모니터링 및 제어 응용 프로그램 용 FORTRAN에 이러한 알고리즘 (원래는 아님)을 개발했습니다. 불행하게도, 그것은 25 년 전이었고 정확한 공식을 기억하지 못합니다. 그러나이 기술은 이동 평균에 대한 확장이었으며, 선형 기술 대신 2 차 계산을 사용했습니다.
코드를 살펴본 후, 내가 어떻게 그랬는지 알 수있을 것 같습니다. 내부 루프가 어떻게 Sum of Squares를 만들고 있는지 주목하십시오 :
평균과 원래의 가치 합계가 같아야합니다. 단 두 가지 차이점은 순서 (1 대신에 2의 힘)와 그것을 제곱하기 전에 각 값의 평균을 뺀 것입니다. 이제는 분리 할 수없는 것처럼 보일 수도 있지만 실제로 분리 될 수 있습니다.
이제 첫 번째 용어는 정사각형의 합계입니다. 동일한 방법으로 평균에 대한 값 합계를 처리합니다. 마지막 항 (k ^ 2 * n)은 그 기간의 평균 제곱 시간입니다. 어쨌든 기간으로 결과를 나눌 것이기 때문에 여분의 루프없이 새로운 평균 제곱을 추가 할 수 있습니다.
마지막으로 두 번째 항 (SUM (-2 * v [i]) * k)에서 SUM (v [i]) = total = k * n이므로 다음과 같이 변경할 수 있습니다.
또는 기간 (n)이 다시 나뉘어 질 때 -2 * k ^ 2 * n, 이는 평균 제곱의 -2 배입니다. 따라서 최종 결합 공식은 다음과 같습니다.
(필자는 머리 꼭대기에서 파생되므로이 유효성을 확인하십시오)
그리고 코드에 통합하면 다음과 같이 보일 것입니다.
스퀘어의 합을 계산하는 접근법의 문제점은이 스퀘어의 합과 스퀘어가 상당히 커질 수 있으며, 그 차이를 계산하면 매우 큰 오류가 발생할 수 있으므로 더 나은 점을 생각해 봅시다. 왜 이것이 필요한지에 대해서는 Wikipedia의 컴퓨팅 분산 알고리즘과 John Cook의 수치 결과에 대한 이론적 설명을 참조하십시오.
첫째, stddev를 계산하는 대신 분산에 초점을 맞추십시오. 일단 우리가 분산을 가지면, stddev는 분산의 제곱근에 불과합니다.
데이터가 x라고하는 배열에 있다고 가정합니다. n 크기의 윈도우를 하나씩 롤링하는 것은 x [0]의 값을 제거하고 x [n]의 값을 더하는 것으로 생각할 수 있습니다. x [0] .. x [n-1]과 x [1] .. x [n]의 평균을 각각 μ와 μ '로 나타냅니다. x [n] .. x [n-1]과 x [1] .. x [n]의 분산의 차이는 몇 가지 용어를 취소하고 (a²-b²) = (a + b) ( ab) :
따라서 분산은 제곱의 합을 유지할 필요가없는 무언가에 의해 불안정합니다. 이는 수치 정확도에 더 좋습니다.
적절한 알고리즘 (Welford의 방법)을 사용하여 처음에는 평균과 분산을 한 번 계산할 수 있습니다. 그 후, x [0]의 값을 다른 x [n]으로 대체해야 할 때마다 다음과 같이 평균과 분산을 업데이트합니다.
나는 이것을 매우 비슷한 것으로 사용하여 commons-math를 사용했다 (그리고 그 라이브러리에 기여했다!). 그것은 오픈 소스입니다. C #으로 이식하는 것은 상점에서 구입 한 파이처럼 쉽습니다 (파이를 처음부터 만들려고 했습니까?). 그것을 확인하십시오 : commons. apache. org/math/api-3.1.1/index. html. StandardDeviation 클래스가 있습니다. 마을에가!
가장 중요한 정보는 이미 위에 주어진 것입니다. 그러나 이것은 여전히 ​​일반적 관심사입니다.
이동 평균 및 표준 편차를 계산하는 작은 Java 라이브러리는 github / tools4j / meanvar에서 사용할 수 있습니다.
구현은 위에서 언급 한 Welford의 방법의 변형을 기반으로합니다. 값 창을 이동하는 데 사용할 수있는 값을 제거하고 바꿀 수있는 메서드가 파생되었습니다.

Bollinger Bands & reg;
Bollinger Bands (BB)는 봉투와 유사합니다. 유일한 차이점은 Envelopes의 밴드가 이동 평균에서 일정 거리 (%) 떨어져있는 반면 Bollinger 밴드는 특정 표준 편차의 수를 그로부터 플롯한다는 것입니다. 표준 편차는 변동성의 척도이므로 Bollinger Bands는 시장 상황에 맞춰 조정합니다. 시장의 변동성이 커지면 변동폭이 작 으면서 밴드가 넓어 져 계약을 맺습니다.
Bollinger Bands는 일반적으로 가격 차트에 표시되지만 표시기 차트에도 추가 할 수 있습니다. Envelopes의 경우와 마찬가지로, Bollinger Bands의 해석은 가격이 밴드의 상단과 하단 사이에 남는 경향이 있다는 사실에 근거합니다. Bollinger Band 표시기의 특징은 가격의 변동성으로 인한 가변 폭입니다. 가격 변동이 심한 기간 (즉, 변동성이 큰 기간)에는 밴드가 넓어짐에 따라 가격 변동이 심합니다. 정지 기간 또는 변동성이 적은 기간 동안 밴드는 계약을 체결하여 가격을 제한합니다.
Bollinger Band의 특징은 다음과 같습니다.
변동성의 감소로 인해 밴드가 축소 된 후에 가격의 급격한 변화가 일어나는 경향이있다. 가격이 상위 밴드를 돌파하면 현재의 추세가 지속될 것으로 예상된다. 밴드 외부의 작은 구멍과 빈 구멍 뒤에 밴드 안쪽에 작은 구멍과 빈 구멍이 있으면 추세가 역전 될 수 있습니다. 밴드의 라인 중 하나에서 시작한 가격 움직임은 대개 반대편에 도달합니다.
마지막 관찰은 가격 지침을 예측하는 데 유용합니다.
계산.
Bollinger 밴드는 세 줄로 구성됩니다. 가운데 선 (ML)은 일반적인 이동 평균입니다.
ML = SUM (CLOSE, N) / N = SMA (CLOSE, N)
상단 라인 (TL)은 중간 라인과 ML의 특정 편차 (D)가 동일합니다.
TL = ML + (D * StdDev)
맨 아래 줄 (BL)은 같은 수의 표준 편차만큼 아래로 이동 한 중간 줄입니다.
BL = ML - (D * StdDev)
SUM (.N)은 N 개의 기간에 대한 합계입니다.
닫기는 가까운 가격입니다.
N은 계산에 사용되는 기간 수입니다.
SQRT는 제곱근입니다.
StdDev는 표준 편차를 의미합니다.
StdDev = SQRT (SUM ((CLOSE-SMA (CLOSE, N)) ^ 2, N) / N)
가운데 선은 20주기의 단순 이동 평균을 사용하고, 위쪽과 아래쪽 선은 표준 편차 두 표준 편차로 표시하는 것이 좋습니다. 게다가, 10 개 기간 이하의 이동 평균은 거의 효과가 없습니다.

볼링 밴드 C #
App Store를 통해 가져 오기 우리의 응용 프로그램 에서이 게시물을 읽으십시오!
탈리 브 사용 Bollinger 밴드.
talib를 사용하여 간단한 BBands 응용 프로그램을 구현하려고합니다.
나는 Talib와 기술적 인 지시자에 어떤 expireience도 가지지 않고있다.
누군가가 탈리 브를 사용하는 Bollinger Bands의 좋은 구현인지 여부를 살펴보고 어떻게 향상시킬 수 있는지 조언 해 줄 수 있습니까? 누구든지 Talib와 Bollinger Bands와 만기가된다면 나에게 도움을 줄 수있을 것이다. 여기에 코드가 있습니다.

Bollinger Bands® 및 MACD를 사용하여 거래 전략을 어떻게 수립합니까?
기술적 인 거래자는 많은 지표와 차트를보고 각 보안에 적합한 거래 전략을 개발합니다. 이 거래자들이 사용하는 많은 도구가 일반 투자자에게 도움이 될 수 있습니다. 약간의 배경 지식과 그들이 어떻게 작동하는지에 대한 이해만으로 Bollinger Bands 및 이동 평균 컨버전스 차이 (MACD)와 같은 지표를 사용하여 수익성 높은 거래 전략을 세울 수 있습니다.
기술적 분석가이자 상인 인 John Bollinger가 개발 한 Bollinger Bands는 표준 편차 영역을 보여주는 보안 이동 평균을 둘러싼 일련의 밴드입니다. 일반적으로 장시간 동안 일정 범위 내에서 변동하는 보안을 위해 차트에 직사각형 패턴을 만드는 경우 Bollinger Bands를 사용하여 수익성 높은 거래를 설정할 수 있습니다. 매수와 매도 방법은 옆으로 움직이는 유가 증권에 거의 이익을주지 못하지만 하단 볼 링거 밴드에서 또는 근처에서 매수하고 상한 근처에서 팔 수있는 한도 주문을 설정하면 가격 변동을 활용할 수 있습니다. 이 거래 전략을 스윙 거래라고합니다. Bollinger Band 설정을 표준 2 대신 하나의 표준 편차로 낮춤으로써이 전략으로 위험 수준을 사용자 정의하십시오.
MACD는 일반적으로 증권이 과매 수 또는 과매도인지 여부를 밝히는데 사용되며, 일반적으로 거래자는 향후 추세 반전을 설명하는 거래 전략을 채택하게됩니다. MACD의 힘을 이용하는 인기있는 거래 전략은 다양성을 교환합니다. 보안 성향의 가격이 MACD가 아닌 새로운 가격대를 보일 때, 긴 포지션을 매도하거나 매도 포지션을 입력하십시오. 이는 가격 상승의 모멘텀이 약해지고 곧 가격이 조정될 것이라는 것을 나타냅니다.

Comments