Để code nhanh chúng ta tận dụng code sinh tự động khi kéo thả chart mặc định trên giao diện hoặc dùng code snippest
Chúng ta cũng không đi sâu về công thức tính toán chỉ báo kỹ thuật mà chỉ hiểu cách điều chỉnh thông số để sử dụng (Ý nghĩa chỉ báo có trong phần Help trên Amibroker hoặc có thể Google)
CHỈ BÁO KỸ THUẬT MACD – MOVING AVERAGE CONVERGENCE/DIVERGENCE
Khi kéo chart MACD mặc định từ danh sách Indicator vào Đồ thị ta sẽ có code tự tạo như sau (Chuột phải / Edit Fomula)
|
1 2 3 4 5 6 7 8 |
<span class="token function">_SECTION_BEGIN</span><span class="token punctuation">(</span><span class="token string">"MACD"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> r1 <span class="token operator">=</span> <span class="token function">Param</span><span class="token punctuation">(</span> <span class="token string">"Fast avg"</span><span class="token punctuation">,</span> <span class="token number">12</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">200</span><span class="token punctuation">,</span> <span class="token number">1</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> r2 <span class="token operator">=</span> <span class="token function">Param</span><span class="token punctuation">(</span> <span class="token string">"Slow avg"</span><span class="token punctuation">,</span> <span class="token number">26</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">200</span><span class="token punctuation">,</span> <span class="token number">1</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> r3 <span class="token operator">=</span> <span class="token function">Param</span><span class="token punctuation">(</span> <span class="token string">"Signal avg"</span><span class="token punctuation">,</span> <span class="token number">9</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">200</span><span class="token punctuation">,</span> <span class="token number">1</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">Plot</span><span class="token punctuation">(</span> ml <span class="token operator">=</span> <span class="token function">MACD</span><span class="token punctuation">(</span>r1<span class="token punctuation">,</span> r2<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">StrFormat</span><span class="token punctuation">(</span><span class="token function">_SECTION_NAME</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">+</span><span class="token string">"(%g,%g)"</span><span class="token punctuation">,</span> r1<span class="token punctuation">,</span> r2<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamColor</span><span class="token punctuation">(</span><span class="token string">"MACD color"</span><span class="token punctuation">,</span> colorRed <span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamStyle</span><span class="token punctuation">(</span><span class="token string">"MACD style"</span><span class="token punctuation">)</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">Plot</span><span class="token punctuation">(</span> sl <span class="token operator">=</span> <span class="token function">Signal</span><span class="token punctuation">(</span>r1<span class="token punctuation">,</span>r2<span class="token punctuation">,</span>r3<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token string">"Signal"</span> <span class="token operator">+</span> <span class="token function">_PARAM_VALUES</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamColor</span><span class="token punctuation">(</span><span class="token string">"Signal color"</span><span class="token punctuation">,</span> colorBlue <span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamStyle</span><span class="token punctuation">(</span><span class="token string">"Signal style"</span><span class="token punctuation">)</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">Plot</span><span class="token punctuation">(</span> ml<span class="token operator">-</span>sl<span class="token punctuation">,</span> <span class="token string">"MACD Histogram"</span><span class="token punctuation">,</span> <span class="token function">ParamColor</span><span class="token punctuation">(</span><span class="token string">"Histogram color"</span><span class="token punctuation">,</span> colorDefault <span class="token punctuation">)</span><span class="token punctuation">,</span> styleNoTitle <span class="token operator">|</span> <span class="token function">ParamStyle</span><span class="token punctuation">(</span><span class="token string">"Histogram style"</span><span class="token punctuation">,</span> styleHistogram <span class="token operator">|</span> styleNoLabel<span class="token punctuation">,</span> maskHistogram <span class="token punctuation">)</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">_SECTION_END</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> |
Sử dụng 3 chu kỳ mặc định r1(12) r2(26) và r3(9) của Chỉ Báo Kỹ Thuật MACD
=> Chúng ta có thể điều chỉnh các chu kỳ này cho phù hợp với chiến lược phân tích.
Hàm Param để hiển thị option điều chỉnh trên giao diện người dùng
Hàm Plot vẽ chỉ báo kỹ thuật MACD với chu kỳ r1 và r2
Hàm Plot vẽ đường Signal với chu kỳ r1 và r2 và r3
Hàm Plot vẽ biểu đồ phân kỳ là hiệu giữa MACD và Signal, trên 0 (phân kỳ lên) khi MACD cắt lên Signal và dưới 0 (phân kỳ giảm) khi MACD cắt xuống Signal

VẼ CHỈ BÁO KỸ THUẬT MACD THEO TUẦN VÀ THÁNG
Thay vì phải nhấn vào nút W để xem chart theo tuần hay M theo tháng, với việc thêm vài câu lệnh ta có thể hiển thị 3 đường MACD với 3 khung thời gian khác nhau
Sử dụng câu lệnh: TimeFrameSet(inWeekly);
MACD TUẦN
|
1 2 3 4 5 6 7 8 9 |
<span class="token function">_SECTION_BEGIN</span><span class="token punctuation">(</span><span class="token string">"MACDW"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">TimeFrameSet</span><span class="token punctuation">(</span>inWeekly<span class="token punctuation">)</span><span class="token punctuation">;</span> r1 <span class="token operator">=</span> <span class="token function">Param</span><span class="token punctuation">(</span> <span class="token string">"Fast avg"</span><span class="token punctuation">,</span> <span class="token number">12</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">200</span><span class="token punctuation">,</span> <span class="token number">1</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> r2 <span class="token operator">=</span> <span class="token function">Param</span><span class="token punctuation">(</span> <span class="token string">"Slow avg"</span><span class="token punctuation">,</span> <span class="token number">26</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">200</span><span class="token punctuation">,</span> <span class="token number">1</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> r3 <span class="token operator">=</span> <span class="token function">Param</span><span class="token punctuation">(</span> <span class="token string">"Signal avg"</span><span class="token punctuation">,</span> <span class="token number">9</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">200</span><span class="token punctuation">,</span> <span class="token number">1</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">Plot</span><span class="token punctuation">(</span> ml <span class="token operator">=</span> <span class="token function">MACD</span><span class="token punctuation">(</span>r1<span class="token punctuation">,</span> r2<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">StrFormat</span><span class="token punctuation">(</span><span class="token function">_SECTION_NAME</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">+</span><span class="token string">"(%g,%g)"</span><span class="token punctuation">,</span> r1<span class="token punctuation">,</span> r2<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamColor</span><span class="token punctuation">(</span><span class="token string">"MACD color"</span><span class="token punctuation">,</span> colorGreen <span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamStyle</span><span class="token punctuation">(</span><span class="token string">"MACD style"</span><span class="token punctuation">)</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">Plot</span><span class="token punctuation">(</span> sl <span class="token operator">=</span> <span class="token function">Signal</span><span class="token punctuation">(</span>r1<span class="token punctuation">,</span>r2<span class="token punctuation">,</span>r3<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token string">"Signal"</span> <span class="token operator">+</span> <span class="token function">_PARAM_VALUES</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamColor</span><span class="token punctuation">(</span><span class="token string">"Signal color"</span><span class="token punctuation">,</span> colorGold <span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamStyle</span><span class="token punctuation">(</span><span class="token string">"Signal style"</span><span class="token punctuation">)</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">Plot</span><span class="token punctuation">(</span> ml<span class="token operator">-</span>sl<span class="token punctuation">,</span> <span class="token string">"MACD Histogram"</span><span class="token punctuation">,</span> <span class="token function">ParamColor</span><span class="token punctuation">(</span><span class="token string">"Histogram color"</span><span class="token punctuation">,</span> colorDefault <span class="token punctuation">)</span><span class="token punctuation">,</span> styleNoTitle <span class="token operator">|</span> <span class="token function">ParamStyle</span><span class="token punctuation">(</span><span class="token string">"Histogram style"</span><span class="token punctuation">,</span> styleHistogram <span class="token operator">|</span> styleNoLabel<span class="token punctuation">,</span> maskHistogram <span class="token punctuation">)</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">_SECTION_END</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> |
MACD THÁNG
|
1 2 3 4 5 6 7 8 9 |
<span class="token function">_SECTION_BEGIN</span><span class="token punctuation">(</span><span class="token string">"MACDM"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">TimeFrameSet</span><span class="token punctuation">(</span>inMonthly<span class="token punctuation">)</span><span class="token punctuation">;</span> r1 <span class="token operator">=</span> <span class="token function">Param</span><span class="token punctuation">(</span> <span class="token string">"Fast avg"</span><span class="token punctuation">,</span> <span class="token number">12</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">200</span><span class="token punctuation">,</span> <span class="token number">1</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> r2 <span class="token operator">=</span> <span class="token function">Param</span><span class="token punctuation">(</span> <span class="token string">"Slow avg"</span><span class="token punctuation">,</span> <span class="token number">26</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">200</span><span class="token punctuation">,</span> <span class="token number">1</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> r3 <span class="token operator">=</span> <span class="token function">Param</span><span class="token punctuation">(</span> <span class="token string">"Signal avg"</span><span class="token punctuation">,</span> <span class="token number">9</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">200</span><span class="token punctuation">,</span> <span class="token number">1</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">Plot</span><span class="token punctuation">(</span> ml <span class="token operator">=</span> <span class="token function">MACD</span><span class="token punctuation">(</span>r1<span class="token punctuation">,</span> r2<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">StrFormat</span><span class="token punctuation">(</span><span class="token function">_SECTION_NAME</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token operator">+</span><span class="token string">"(%g,%g)"</span><span class="token punctuation">,</span> r1<span class="token punctuation">,</span> r2<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamColor</span><span class="token punctuation">(</span><span class="token string">"MACD color"</span><span class="token punctuation">,</span> colorWhite <span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamStyle</span><span class="token punctuation">(</span><span class="token string">"MACD style"</span><span class="token punctuation">)</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">Plot</span><span class="token punctuation">(</span> sl <span class="token operator">=</span> <span class="token function">Signal</span><span class="token punctuation">(</span>r1<span class="token punctuation">,</span>r2<span class="token punctuation">,</span>r3<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token string">"Signal"</span> <span class="token operator">+</span> <span class="token function">_PARAM_VALUES</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamColor</span><span class="token punctuation">(</span><span class="token string">"Signal color"</span><span class="token punctuation">,</span> colorCustom16 <span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">ParamStyle</span><span class="token punctuation">(</span><span class="token string">"Signal style"</span><span class="token punctuation">)</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">Plot</span><span class="token punctuation">(</span> ml<span class="token operator">-</span>sl<span class="token punctuation">,</span> <span class="token string">"MACD Histogram"</span><span class="token punctuation">,</span> <span class="token function">ParamColor</span><span class="token punctuation">(</span><span class="token string">"Histogram color"</span><span class="token punctuation">,</span> colorDefault <span class="token punctuation">)</span><span class="token punctuation">,</span> styleNoTitle <span class="token operator">|</span> <span class="token function">ParamStyle</span><span class="token punctuation">(</span><span class="token string">"Histogram style"</span><span class="token punctuation">,</span> styleHistogram <span class="token operator">|</span> styleNoLabel<span class="token punctuation">,</span> maskHistogram <span class="token punctuation">)</span> <span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">_SECTION_END</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> |
Kết quả hiển thị

