Tak jak obiecałem w poprzednim artykule, dzisiaj nauczymy się jak zrobić filtr sygnałów dla wszystkich spółek lub kontraktów terminowych nowym, o wiele szybszym sposobem, bez konieczności uruchamiania MT4 dla każdego waloru.
Tym razem sygnał będzie tworzony następująco (prośba jednego z komentarzy do poprzednich wpisów): jeżeli walor lub kontrakt przebije na CLOSE najwyższą wartość HIGH z poprzednich 20 sesji, generowany jest sygnał kupna.
Przejdźmy zatem do dzieła. Schemat działania:
1. Utworzenie listy walorów do zbadania i umieszczenie tejże listy w pliku tekstowym: dzięki temu skrypt MT4 nie będzie musiał być przekompilowywany za każdym razem, gdy chcemy zmienić zestaw walorów.
2. Otwarcie Metatrader’a z listą walorów do zbadania.
3. Uruchomienie skryptu, który zbada wszystkie walory lub kontrakty po kolei i zapisze wynik. Wynik może być zapisywany do konsoli, może być umieszczany na wykresach, lub może być zapisywany w pliku tekstowym. Wybrałem trzecie rozwiązanie, czyli zapis do pliku tekstowego.
ad 1) Utworzenie listy walorów do zbadania:
Sposoby są 2 - ręczne zapisywanie (wolne), lub za pomocą 1 linijki dzięki zainstalowanemu CygWin’owi (patrz poprzedni tutorial), przykładowo przez polecenie
ls -1 | grep “^A” > walory_do_sprawdzenia.txt (walory na literę A)
ls -1 > walory_do_sprawdzenia.txt (wszystkie walory)
Uwaga: z powodu ograniczenia architektury MT4 można wczytywać maksymalnie ok 120 walorów na raz.
(screenshot konsoli - można powiekszyć przez kliknięcie)
ad 2) Otwarcie MetaTradera z listą walorów - wystarczy użyć poniższy skrypt:
#!/bin/bash
# Filtr sygnalow kupna 2
## Copyright (c) 2009, AktywnyInwestor.pl
## Skrypt
PLIKZWALORAMI="c:\\mt4\\experts\\files\\walory_do_sprawdzenia.txt"
WALORY=`cat $PLIKZWALORAMI | awk -F"1440.hst" '{ print $1 }'`
PROFILE_DIR="c:\\mt4\\profiles\\sygnaly\\"
PROGRAM_DIR="c:\\mt4\\"
## kopia tymczasowa plików w profilu sygnay
mv -f $PROFILE_DIR"chart01.chr" $PROFILE_DIR"chart01.bak"
mv -f $PROFILE_DIR"order.wnd" $PROFILE_DIR"order.bak"
cd $PROGRAM_DIR
licznik=1;
for i in $WALORY
do
echo "Processing "$i
echo $i",Daily (offline)" >> $PROFILE_DIR"order.wnd"
CHARTNAME=`Printf "chart%02d.chr" $licznik`
cat $PROFILE_DIR"\chart01.bak" | sed '2s/.*/symbol='"$i"'/' > $PROFILE_DIR$CHARTNAME
let licznik=licznik+1;
echo licznik = $licznik
Printf "%02d" $licznik;
done
./terminal.exe terminal_sygnaly.ini
## Cleanup
cd $PROFILE_DIR
rm -f *.chr
rm -f *.wnd
mv -f "chart01.bak" "chart01.chr"
mv -f "order.bak" "order.wnd"
cd $PROGRAM_DIR
Skrypt na pierwszy rzut oka może wyglądać na bardzo zawiły, jednak w rzeczywistości taki nie jest. Jego funkcjonalność jest podzielona na 3 części: pierwsza część przygotowuje sztuczne pliki dla profilu ’sygnaly’ (kolejny nieudokumentowany trick - dzięki temu nie trzeba ręcznie otwierać po kolei wszystkich walorów!). Druga część uruchamia MetaTrader’a i czeka na uruchomienie skryptu w MQL i wyłączenie MT4. Trzecia część przywraca stan profilu ’sygnaly’ do stanu poczatkowego.
ad 3) Skrypt w MQL4, który bada wszystkie akcje i kontrakty terminowe, które wpisaliśmy do listy w pliku ‘walory_do_zbadania.txt’:
Mam nadzieję, że komentarze w skrypcie ułatwiają zrozumienie kodu. Skrypt po kolei sprawdza HIGH z poprzednich 20 sesji i porównuje CLOSE dzisiejszego dnia dla każdej akcji lub kontraktu terminowego - jest uniwersalny. Mój przykładowy plik wynikowy ma postać:
…
Sygnal dla ASBIS : HIGH20 = 2.1 , DZISIEJSZE CLOSE = 1.78 wynik: BRAK SYGNALU KUPNA
Sygnal dla ASSECOBS : HIGH20 = 7.57 , DZISIEJSZE CLOSE = 6.7 wynik: BRAK SYGNALU KUPNA
Sygnal dla ASSECOPOL : HIGH20 = 59.25 , DZISIEJSZE CLOSE = 57.5 wynik: BRAK SYGNALU KUPNA
Sygnal dla ASSECOSLO : HIGH20 = 23.1 , DZISIEJSZE CLOSE = 22.05 wynik: BRAK SYGNALU KUPNA
Sygnal dla ASTARTA : HIGH20 = 21.4 , DZISIEJSZE CLOSE = 18 wynik: BRAK SYGNALU KUPNA
Sygnal dla ATLANTAPL : HIGH20 = 3.15 , DZISIEJSZE CLOSE = 3.06 wynik: BRAK SYGNALU KUPNA
Sygnal dla ATLANTIS : HIGH20 = 2.18 , DZISIEJSZE CLOSE = 1.98 wynik: BRAK SYGNALU KUPNA
Sygnal dla ATLASEST : HIGH20 = 3.58 , DZISIEJSZE CLOSE = 3.23 wynik: BRAK SYGNALU KUPNA
Sygnal dla ATM : HIGH20 = 5.58 , DZISIEJSZE CLOSE = 5.74 wynik: NA CLOSE PRZEBITE HIGH 20-SESYJNE, SYGNAL KUPNA
Sygnal dla ATMGRUPA : HIGH20 = 4.29 , DZISIEJSZE CLOSE = 3.9 wynik: BRAK SYGNALU KUPNA
Sygnal dla ATREM : HIGH20 = 12.86 , DZISIEJSZE CLOSE = 12.9 wynik: NA CLOSE PRZEBITE HIGH 20-SESYJNE, SYGNAL KUPNA
Sygnal dla AZOTYTARNOW : HIGH20 = 17.64 , DZISIEJSZE CLOSE = 17.03 wynik: BRAK SYGNALU KUPNA
Sygnal dla B3SYSTEM : HIGH20 = 2.83 , DZISIEJSZE CLOSE = 2.83 wynik: BRAK SYGNALU KUPNA
Sygnal dla BAKALLAND : HIGH20 = 3.79 , DZISIEJSZE CLOSE = 3.45 wynik: BRAK SYGNALU KUPNA
Sygnal dla BANKBPH : HIGH20 = 38.69 , DZISIEJSZE CLOSE = 37.81 wynik: BRAK SYGNALU KUPNA
Sygnal dla BANKIER.PL : HIGH20 = 8.11 , DZISIEJSZE CLOSE = 8.06 wynik: BRAK SYGNALU KUPNA
Sygnal dla BARLINEK : HIGH20 = 3.85 , DZISIEJSZE CLOSE = 3.54 wynik: BRAK SYGNALU KUPNA
Sygnal dla BBICAPNFI : HIGH20 = 1.81 , DZISIEJSZE CLOSE = 1.7 wynik: BRAK SYGNALU KUPNA
Sygnal dla BBIDEVNFI : HIGH20 = 0.41 , DZISIEJSZE CLOSE = 0.38 wynik: BRAK SYGNALU KUPNA
Sygnal dla BBIZENNFI : HIGH20 = 0.75 , DZISIEJSZE CLOSE = 0.6 wynik: BRAK SYGNALU KUPNA
…
Jest to oczywiście tylko przykład, można dowolnie formatować wyniki np. w taki sposób, aby można było je łatwo skopiować do arkusza kalkulacyjnego.
Poniżej sesja video z uruchomionego skryptu:
Opublikowano 2 rok, 11 mies. temu 20:57. 22 komentarzy
Dzisiaj bardziej technicznie: nauczymy się bardzo przydatnej rzeczy, a mianowicie jak zrobić filtr wybranych sygnałów kupna dla określonych spółek.
Często po analizie fundamentalnej i spekulacyjnej spółki korzystamy ze wskaźników analizy technicznej i na ich podstawie wybieramy moment wejścia - czyli zakupu akcji. Przeglądanie ręcznie wszystkich spółek po kolei jest bardzo czasochłonne i przydałoby się przynajmniej część pracy zlecić automatowi, który ‘za nas’ oceni, oczywiście wg naszych kryteriów, czy powinniśmy już zaalokować część posiadanej gotówki w akcje. Poniżej przedstawiam pierwszy sposób konstrukcji takiego automatu w programie MetaTrader w języku MQL4. Osoby korzystające z tego rozwiązania z pewnością będą o krok naprzód od inwestorów posługujących się wyłącznie ręcznym sprawdzaniem wszystkich spółek.
Wykorzystamy trick, który umożliwia uruchomienie dowolnego skryptu dla otwartego waloru po uruchomieniu MT4. Idea polega na uruchomieniu MetaTradera z uruchomionym skryptem, który sprawdzi wartości określonych wskaźników i zapisze wynik do pliku wyjściowego, a następnie zakończy działanie MetaTrader’a. Skrypt sterujący uruchamianiem Mt4 w pętli podmieni walor do sprawdzenia z uprzednio przygotowanej listy.
Potrzebujemy zrobić zatem 2 mechanizmy: pierwszy będzie podmieniał walor w profilu i uruchamiał program MT4, oraz drugi, który będzie sprawdzał wartości wskaźników AT i za ich pomocą generował sygnał kupna i zapisywał go do pliku wyjściowego.
Aby uruchomić MT4 z określonym walorem, utworzymy profil, który będzie przeznaczony wyłącznie do filtrowania sygnałów. W tym celu, po uruchomieniu MT4, otwórzmy jedną dowolną spółkę offline i zapiszmy profil pod nazwą ’sygnaly’.
Po utworzeniu profilu, wychodzimy z MT4 i przegrywamy plik ‘terminal.ini’ z folderu /config/ do folderu głównego MT4, gdzie znajduje się terminal.exe i zmieniając jego nazwę na ‘terminal_sygnaly.ini’.
Mając powyższe ustawienia przygotujmy sobie listę walorów do sprawdzenia. Do przygotowania takiej listy i dalszej pracy skryptowej wykorzystuję środowisko Cygwin, które można za darmo pobrać z witryny www.cygwin.com (http://www.cygwin.com/setup.exe), a które dla osób nie zaznajomionych z tematem zawiera kopię narzędzi wzorowanych na środowisku linux. Dzięki temu osoby pracujące w systemach linux lub Mac OS będą w stanie łatwo przystosować skrypt dla swoich potrzeb.
Poniżej instalacja CygWin w kilku krokach:
Pierwsze kroki - wybór instalacji z internetu oraz folder docelowy - przykładowo c:\cygwin.
W polu ‘Default Text Type’ należy zmienić opcję Unix/binary (recommended) na DOS/text, unikniemy problemów związanych ze znakiem końca linii w systemie Windows.
Lista pakietów do zainstalowania - do naszych celów wystarczy, aby zainstalować pakiety podstawowe (wystarczy wcisnąć przycisk ‘Dalej’).
Po zainstalowaniu pakietu cygwin uruchamiamy go z Menu Start: Wszystkie Programy -> Cygwin -> Cygwin Bash Shell, naszym oczom powinna ukazać się powłoka systemowa Cygwin’a:
W pracy z Cygwinem nie będziemy uruchamiali środowiska w ten sposób, natomiast zmienimy ścieżkę systemową Windows tak, aby wskazywała także na folder z Cygwinem:
Po tej operacji uruchamiamy powłokę systemową Windows poleceniem Start->Uruchom, wpisujemy w pole z nazwą programu “cmd”. Od tego momentu polecenia Cygwin’a takie jak ‘ls’ ‘grep’ itp. powinny być dostępne z powłoki:
Aby przygotować listę walorów, można zastosować kombinację poleceń ls i grep, np.
ls c:\mt4\history\AlpariUK-Demo -1| grep “^P” > c:\mt4\walory_do_sprawdzenia.txt
(wpisanie wszystkich spółek zaczynających się na literę P)
lub np.
ls c:\mt4\history\AlpariUK-Demo -1 > c:\mt4\walory_do_sprawdzenia.txt
(wpisanie wszystkich spółek)
Oczywiście plik ‘walory_do_sprawdzenia.txt’ nie musi zawierać nazw w kolejności alfabetycznej, można dowolnie wycinać oraz wpisywać interesujące nas walory.
Mój przykładowy plik ma postać:
Następnie piszemy skrypt, który będzie z pliku ‘walory_do_sprawdzenia.txt’ wyciągał nazwy kolejnych walorów i podmieniał je w profilu ’sygnaly’. Jest to oczywiście sztuczka, której nie ma w żadnych instrukcjach MetaTradera:
Profil ’sygnaly’ zawiera w folderze 2 pliki: chart01.chr oraz order.wnd, które przechowują informacje o otwartych oknach oraz ustawieniach profilu. W pliku order.wnd przed uruchomieniem MT4 musi się znaleźć przykladowo:
AGORA,Daily (offline)
(ogólnie NAZWAWALORU,Daily (offline))
a w pliku chart01.chr interesuje nas druga linijka:
symbol=AGORA
gdzie pole po symbol= podmieniamy na dowolny kolejny symbol z pliku walory_do_sprawdzenia.txt
Kod skryptu umieszczam poniżej:
#!/bin/bash
# Filtr sygnalow kupna 1
# Copyright (c) 2009, AktywnyInwestor.pl
pliki_cut=`cat walory_do_sprawdzenia.txt | awk -F"1440.hst" '{ print $1 }'`
PROFILE_DIR="c:\\mt4\\profiles\\sygnaly\\"
PROGRAM_DIR="c:\\mt4\\"
cd $PROGRAM_DIR
for i in $pliki_cut
do
echo "Processing "$i
echo $i",Daily (offline)" > $PROGRAM_DIR\\order.wnd
rm -f $PROFILE_DIR\\*
cp -f $PROGRAM_DIR\\order.wnd $PROFILE_DIR
cat $PROFILE_DIR"\chart01.chr" | sed '2s/.*/symbol='"$i"'/' > $PROFILE_DIR"\chart02.chr"
mv -f $PROFILE_DIR"\chart02.chr" $PROFILE_DIR"\chart01.chr"
cd $PROGRAM_DIR
./terminal.exe terminal_sygnaly.ini
done
Mamy skrypt, który podmienia nazwy spółek dla profilu sygnaly, czas na napisanie skryptu w MQL4, który sprawdzi warunek kupna na podstawie zadanych kryteriów i wpisze wynik do pliku wynikowego:
Do prawidłowego działania skryptu należy za pomocą menu Opcje zakładka Strategie (CTRL + O), ustawić w MT4 import dll:
Skoro wszystko zostało już przygotowane, jesteśmy gotowi do przeprowadzenia testu. Skrypt wywolujemy korzystając z polecenia ‘bash filtr1.sh’, w trakcie jego działania w konsoli powinniśmy otrzymać kolejno nazwy sprawdzany spółek, np.:
podczas pracy skryptu zobaczymy uruchamianie i wyłączanie MetaTradera, jest to nieco czasochłonne, więc można w oczekiwaniu na wyniki odejść od komputera np. na herbatę.
Po zakończeniu skryptu wyniki mają postać:
Sygnal dla walora PAGED : RSI = 81.2505 , BRAK SYGNALU KUPNA
Sygnal dla walora PAMAPOL : RSI = 54.618 , BRAK SYGNALU KUPNA
Sygnal dla walora PANOVA : RSI = 57.7409 , BRAK SYGNALU KUPNA
Sygnal dla walora PBG : RSI = 66.4854 , BRAK SYGNALU KUPNA
….
Oczywiście sam sposób generowania sygnału zakupu należy traktować wyłącznie jako przykład.
Już wkrótce podam drugi sposób, który został wymyślony po zaimplementowaniu sposobu powyżej, a który nie wymaga wielokrotnego uruchamiania MT4.
Opublikowano 2 rok, 11 mies. temu 21:47. 7 komentarzy
Dzisiaj mały przerywnik: “Psychologia inwestowania”, czyli ostrzeżenie: co może się stać, gdy rynek nie idzie w naszą stronę. Walka z rynkiem oczywiście bardzo wpływa na nasze emocje i sztuką jest czasem utrzymać nerwy na wodzach. Pamiętajmy o trzymaniu się własnego planu gry, oraz o tym, że aktywny inwestor wcale nie oznacza nadpobudliwego inwestora.
Witam na pierwszym tutorialu poświęconym programowaniu w języku MQL na platformie MetaTrader.
Język MQL jest językiem zaprojektowanym specjalnie w celu ułatwienia analizy danych walutowych forex i kontraktów terminowych. Dla większości osób zapewne jest to całkowita abstrakcja, więc nie będziemy zagłębiać sie w każdą funkcję API. Nie zamierzam opisywać całego języka MQL, a raczej przedstawiać sposoby realizacji pomysłów, jakie nasuwają się podczas analizy spółek giełdowych.
Dzisiejszy tutorial ma nazwę ‘Debiuty GPW - wykres wspomagany MQL’:
Ostatnio postanowiłem bliżej przyjrzeć się debiutom spółek na GPW. Na początek chciałem sprawdzić, jak na debiut wpływa główny trend na giełdzie. Aby to zrobić, dążyłem do wyświetlenia nazwy wszystkich debiutów spółek na wykresie, uzyskując ostateczny efekt jak poniżej:
Aby osiągnąć cel, na początek potrzebujemy uzyskać daty interesujących nas debiutów. Wszystkie debiuty znajdują się na oficjalnej stronie internetowej GPW. Wybrałem wszystkie debiuty w 2008 r. i na postawie tabeli umieszczonej na stronie debiuty GPW utworzyłem plik zawierający w poszczególnych kolumnach nazwę spółki, datę debiutu, cenę emisyjną, wartość emisji, wartość oferty, ceny na zamknięcie w dniu debiutu za akcje lub cenę na zamknięcie w dniu debiutu dla PDA. Fragment pliku poniżej:
1;Atlas Estates Limited;2008.02.12;14,32;0,00;0,00;16,00;
2;Optopol Technology;2008.02.19;20,00;66 000 000;66 000 000; ;26,81
3;ZM Herman;2008.02.28;1,80;1 905 249,6;1 905 249,6; ;1,91
4;Skyline Investment;2008.03.18;9,00;18 000 000;18 000 000; ;8,55
5;Power Media;2008.03.20;5,00;7 000 000,00;7 000 000,00; ;5,00
6;Trakcja Polska;2008.04.01;4,00;120 000 000,00;160 000 000,00;4,92;4,94
7;Wojas;2008.04.02;9,50;25 428 251,00;25 428 251,00; ;8,88
8;Hardex;2008.04.03;100,00;9 614 300,00;9 614 300,00; ;99,00 ...
Dla zainteresowanych plik w całości znajduję się TUTAJ: debiuty.
Mając plik zawierający potrzebne nam dane, czyli w tym przypadku nazwę spółki i datę debiutu (resztę danych na razie pomijamy) należy nanieść nazwy spółek na wykres. Aby to zrobić, napiszemy SKRYPT MQL4, który automatycznie pobierze nazwy spółek i daty debiutów i umieści je na wykresie. Aby napisać skrypt, w głównym oknie MT4 wciskamy przycisk F4, który przeniesie nas do edytora plików MQL: MetaEditor’a. W MetaEditorze wybieramy opcję Plik->Nowy->Skrypt, co uruchomi Wizarda Doradcy Eksperckiego:
Wizard tworzy za nas automatycznie szkielet skryptu w języku MQL i wyświetla go na ekranie. Ponieważ szkielet skryptu jest już gotowy, wpisujemy nasz skrypt wyświetlający nazwy debiutów GPW na wykresie WIG20:
Z pewnością na pierwszy rzut oka wygląda to jak ‘czarna magia’, więc rozbijam skrypt na czynniki pierwsze. Na początku skryptu znajdują się nagłówek z wygenerowanymi danymi dotyczącymi autora oraz praw autorskich:
Następnie mamy dyrektywę include, która jest potrzebna do zaimportowania kodu błędów, tak aby zamiast mało znaczącego return 0 można było wstawić ERR_NO_ERROR.
#include <stderror.mqh>
Następnie mamy 2 funkcje: init() oraz deinit() wołane przy starcie i zabijaniu skryptu, nie robimy tu nic szczególnego oprócz zabicia wszystkich zbędnych obiektów, które mogą znajdować się na wykresie:
Poniżej znajduje się funkcja start(), która jest sercem naszego skryptu, wykonują się w niej wszystkie operacje istotne dla działania skryptu. Na początku funkcji mamy zdefiniowane kilka zmiennych: datę w formacie rozpoznawanym przez MetaTradera, indeks świeczki nad którą narysować nazwę walora, przesunięcie względem świeczki, uchwyt pliku (unikalną liczbę która pozwala na rozpoznanie czy plik jest otwarty), nazwę walora i datę debiutu w formacie String, które wycinamy z pliku debiuty.
// zmienne lokalne
datetime data;
int idx;
int delta;
int plik;
string nazwaWaloru;
string dataDebiutu;
Po zadeklarowaniu zmiennych otwieram plik z debiutami i wczytuję je kolejno do systemu:
// otwarcie pliku z danymi debiutów
plik=FileOpen("debiuty2008.txt", FILE_CSV|FILE_READ);
if(plik>0) // jeżeli plik istnieje
{
while(!FileIsEnding(plik)) // czytaj az do konca pliku
{
Print(FileReadString(plik)); // pierwsza wartość to LP. do pominięcia
nazwaWaloru = FileReadString(plik);
dataDebiutu = FileReadString(plik);
while ((!FileIsLineEnding(plik)) &amp;&amp; (!FileIsEnding(plik))) // resztę pól w linii pomijamy
{
FileReadString(plik);
}
Print(nazwaWaloru); // wypisz na konsoli nazwę waloru
Print(dataDebiutu); // wypisz na konsoli datę debiutu
// konwersja czasu z formatu String na format datetime
data = StrToTime(dataDebiutu);
Aby narysować nazwę walora nad dobrą świeczką, musimy znaleźć jej indeks i obliczyć przesunięcie, tak aby nazwa nie nakładała się na wykres, a była wyświetlana nad nim:
// uzyskaj indeks swieczki z danego dnia
idx = iBarShift("WIG20_", PERIOD_D1, data);
// oblicz przesuniecie nazwy wzgledem High dnia + 200px
delta = iHigh("WIG20_", PERIOD_D1, idx) + 200;
Po tych spektakularnych obliczeniach wstawiamy nazwę na wykres, obracamy ją o 90 stopni w prawo i kolorujemy na czerwono:
if(!ObjectCreate(nazwaWaloru, OBJ_TEXT, 0, data, delta))
{
Print("Blad! nie moge utworzyc obiektu tekstowego. Kod bledu #", GetLastError());
return(0);
} else { // jezeli obiekt zostal utworzony, wpisz tekst i nadaj atrybuty tekstu
ObjectSetText(nazwaWaloru, nazwaWaloru+dataDebiutu);
ObjectSet(nazwaWaloru, OBJPROP_ANGLE, 90);
ObjectSet(nazwaWaloru, OBJPROP_COLOR, Red);
ObjectSet(nazwaWaloru, OBJPROP_FONTSIZE, 8);
}
Po przeliczeniu wszystkich debiutów odświeżamy wykres i zamykamy plik
I to wszystko. Jeżeli i tak za pierwszym razem mało z tego zrozumiałeś, nie przejmuj się, nie od razu Rzym zbudowano. Jak zwykle będę czekał na komentarze.
Opublikowano 2 rok, 11 mies. temu 00:51. 6 komentarzy
Miło mi powiadomić, że zakończyło się przenoszenie serwisu http://AktywnyInwestor.pl na szybkie łącze symetryczne o prędkości 100Mb/s. Mam nadzieję, że wprowadzi to nową jakość użytkowania serwisu.
Jeżeli występują jakikolwiek problemy natury technicznej, proszę wpisać krótki opis problemu, system operacyjny i nazwę przeglądarki, w ten sposób będzie łatwiej zdiagnozować i poprawić problem.
W przyszłości stopniowo będą wprowadzane zaplanowane zmiany dotyczące wyglądu i funkcjonalności, które sugerowali użytkownicy.
Dziękuję za pozytywny odzew oraz za konstruktywne uwagi.
Z powodu awarii macierzy dyskowej serwera, na którym umieszczony jest serwis AktywnyInwestor.pl, nie było dostępu do serwisu przez okres dwóch dni. Wkrótce nastąpi zmiana firmy hostingowej. Przepraszam za trudności z połączeniem.
Nie wiem, czy wszyscy zdążyli zauważyć - od kilku dni, a konkretnie od 4 maja br. pojawiły się 2 nowe indeksy giełdowe GPW - WIG20lev i WIG20short. W kilku zdaniach, WIG20short kształtuje się w sposób odwrotny do indeksu WIG20 tzn. przy spadku WIG20 o 10 pkt. WIG20short rośnie o 10 pkt. Indeks WIG20lev podąża zgodnie z kierunkiem WIG20, ale wzrost WIG20 o 10 pkt powoduje wzrost WIG20lev o 20 pkt. Można zapytać - po co to komu?
Jeżeli nie wiadomo o co chodzi, to chodzi o pieniądze. I zgadza się, właśnie te nowe indeksy powstały po to, aby można było na nich zarabiać. Wig20short został utworzony, aby instytucje finansowe mogły tworzyć nowe struktury (certyfikaty strukturyzowane) oparte na tym instrumencie, czyli jeżeli wartość Wig20short rośnie, to zarabiamy przy spadkach indeksu WIG20.
Natomiast Wig20lev…no właśnie, ma ktoś może pomysł? Komu jest potrzebne lewarowanie na kontraktach WIG20? Zapraszam do komentarzy.
Nowość!! Z dniem dzisiejszym w serwisie http://AktywnyInwestor.pl wprowadzone zostały codzienne dane EOD w formacie MT4 dla indeksów giełdowych z całego świata - Dane MT4 World!
Dane obejmują:
All Ord Austral.
AMEX Major
B-Shares Shanghai
BOVESPA SaoPaulo
Buenos Aires
Budapest BUX
Paris CAC 40
Frankfurt DAX
DJ Industrial
DJ Trans Aver
DJ Util Aver
EOE Amsterdam
London FT-SE
Hang Seng H.Kong
Internet US
Mexic IPC
NASDAQ US
RUSSEL 2000
SASE Select.Ind
SMI Swiss
S&P 500 US
TSE-300 Toronto
NIKKEI 225 Tokyo
TOPIX Tokyo
Dla zainteresowanych - zebrane kilka słów o indeksach:
All Ord Austral. - All Ordinaries Index (AOI) - najstarszy indeks giełdowy z Australii, kapitalizacja indeksu odpowiada ok. 95% wartości akcji na giełdzie ASX (Australian Securities Exchange)
AMEX Major (XMI) - główny indeks giełdowy American Stock Exchange, składający się z 20 największych spółek (blue-chipów), zaprojektowany jako lustrzana kopia DJIA, obliczany od 1983r.
B-Shares Shanghai - indeks giełdy w Szanghaju. B-Shares oznacza, że akcje są notowane w walucie obcej (dolarach amerykańskich), w przeciwieństwie do A-Shares notowanych w jenach. Akcje typu A mogą być nabywane wyłącznie przez inwestorów chińskich (rezydentów)
BOVESPA (BOlsa de Valores dE São PAulo) - indeks giełdy w Sao Paulo. W jego skład wchodzą akcje 50 spółek. Indeks Bovespa składa się z portfela akcji przedsiębiorstw, których obrót stanowi 80% obrotu giełdowego w czasie ostatnich 12 miesięcy i które brały udział w co najmniej 80% sesji giełdowych. Aby zapewnić odpowiednią reprezentatywność, skład indeksu jest rewidowany co trzy miesiące.
Buenos Aires (Merva) - to główny indeks na giełdzie w Buenos Aires (Buenos Aires Stock Exchange); Bazą jest 30 czerwiec 1986 = 0.01 pesos.
Budapest BUX (Budapesti Értéktőzsde) - indeks giełdowy akcji spółek notowanych na Giełdzie Papierów Wartościowych w Budapeszcie .
Paris CAC 40 (Cotation Assistée en Continu – Notowania Ciągłe) – francuski indeks akcji, benchmark giełdy Euronext. Indeks ten skupia 40 najsilniejszych spółek spośród 100 o najwyższej kapitalizacji na Giełdzie Paryskiej (Bourse de Paris). CAC 40 wystartował 31 grudnia 1987 roku z poziomu 1000 punktów.
Frankfurt DAX - (Deutscher Aktienindex) - jest najważniejszym niemieckim indeksem akcji. Jest tzw. indeksem wynikowym (ang. Performanceindex), co oznacza, że bierze pod uwagę nie tylko wzrost cen akcji, ale i również wzrost kapitału poprzez wypłatę dywidendy.
DJ Industrial (Dow Jones Industrial Average DJIA) – to jeden z najważniejszych indeksów akcji spółek notowanych na Giełdzie Papierów Wartościowych w Nowym Jorku (New York Stock Exchange) i Nasdaq. Indeks ten został stworzony przez Charlesa Dowa i statystyka Edwarda Jonesa. Indeks Dow Jones jest najstarszym działającym indeksem akcji w Stanach Zjednoczonych. Obecnie składa się on z 30 największych amerykańskich przedsiębiorstw.
DJ Trans portAver (Dow Jones Transportation Average DJIA) - („średnia transportowa”), założony 3 lipca 1884 roku .
DJ Util Aver (Dow Jones Utilities Average) - średnia ze spółek użyteczności publicznej
EOE (Amsterdam European Options Exchange Index AEX) - indeks 25 wiodących spółek holenderskiej giełdy, założony w 1983r.
London FT-SE (Financial Times Stock Exchange) – indeks akcji spółek giełdowych notowanych na giełdzie w Londynie (London Stock Exchange). Indeks obejmuje 100 największych spółek, uznaje się go za barometr brytyjskiej gospodarki. Obok indeksów DAX i CAC 40 należy on do największych w Europie. Spółki wchodzące w skład indeksu stanowią około 80% kapitalizacji giełdy LSE.
Hang Seng H.Kong - (HSI) to indeks akcji spółek notowanych na giełdzie w Hongkongu (Hong Kong Stock Exchange). Reprezentuje on zmianę kursów akcji 33 największych pod względem kapitalizacji przedsiębiorstw. Spółki wchodzące w skład indeksu stanowią około 70% kapitalizacji giełdy.
Internet US - to indeks dot-comów obliczany przez Bloomberg od 31 grudnia 1998r. (początek boomu spółek internetowych), wlicza się do niego firmy o kapitalizacji minimum 250 mln dolarów, m.in. Yahoo!, AOL, eBay, Amazon.com
Mexico IPC - (Indice de Precios y Cotizaciones) to indeks giełdowy Meksykańskiej Giełdy Papierów Wartościowych (Bolsa Mexicana de Valores). W jego skład wchodzi 35 spółek.
NASDAQ US - (National Association of Securities Dealers Automated Quotations) - indeks pozagiełdowego, regulowanego rynku akcji w Stanach Zjednoczonych, z filiami w Kanadzie i Japonii, zorganizowany i nadzorowany przez National Association of Securities Dealers. Wbrew rozpowszechnionym opiniom, NASDAQ nie jest giełdą w ogólnym znaczeniu tego słowa, lecz jest raczej rozproszonym, elektronicznym systemem handlu akcjami. NASDAQ został uruchomiony 8 lutego 1971.
RUSSEL 2000 -podindeks indeksu RUSSEL 3000, tworzony przez firmę Russell Investments, zawiera benchmark 2000 amerykańskich spółek o małej kapitalizacji.
SASE Select Index (Santiago Stock Exchange) - indeks giełdy w Chile
SMI Swiss - indeks giełdowy spółek notowanych na Szwajcarskiej Giełdzie Papierów Wartościowych (Swiss Exchange). W skład indeksu może wchodzić maksymalnie 30 spółek. Obecnie indeks obejmuje akcje 26 spółek. Swiss Market Index wystartował 30 czerwca 1988 roku z poziomu 1.500 punktów.
S&P 500 US - indeks, w skład którego wchodzi 500 firm o największej kapitalizacji, notowanych na New York Stock Exchange i Nasdaq, są to głównie firmy amerykańskie. S&P 500 wchodzi w skład szerszego indeksu - S&P 1500 oraz S&P Global 1200. TSE-300 Toronto - indeks giełdowy 300 największych spółek notowanych na giełdzie w Toronto.
NIKKEI 225 Tokyo - (jap. 日経平均株価 Nikkei heikin kabuka) to indeks akcji spółek notowanych na giełdzie w Tokio. Nikkei należy do najważniejszych indeksów giełdowych w Azji. Od 1971 roku jest codziennie wyliczany przez dziennik Nihon Keizai Shimbun. Indeks obejmuje 225 największych spółek. Raz w roku dokonuje się rewizji składu indeksu.
TOPIX Tokyo - drugi obok Nikkei 225 ważny indeks giełdowy spółek notowanych na giełdzie w Tokio, obrazuje wszystkie spółki notowane na rynku podstawowym (ok. 1645 przedsiębiorstw). Indeks przechodzi obecnie transformację z systemu opartego na wycenie firmy w oparciu o ilość dostępnych akcji (float) na system wyceny oparty o liczbę akcji w wolnym obrocie (free float).
Uwaga: Dane światowe źródłowe aktualizowane są po sesji w USA o godz. 23:59, zatem dane MT4 World będą uaktualniane w serwisie 2 razy w ciągu doby – po sesji europejskiej i po sesji amerykańskiej po godz. 00:00, w ten sposób rano będzie dostęp do sesji USA z dnia poprzedniego.
Domyślnie w MT4 skala wykresu jest dopasowywana automatycznie do wahań kursu waloru w wyświetlanym przedziale, na podstawie wartości minimalnej i maksymalnej kursu. Z reguły jest to ustawienie dobre, ale tylko dla badanego przedziału. Czasem istnieje konieczność ustawienia skali stałej, tak aby podczas przesuwania wykresu skala nie zmieniała się. W tym celu należy za pomocą klawisza F8 przejść do menu i przestawić skalę na żądaną.
Wartości skali ‘Fixed maximum’ oraz ‘Fixed minimum’ to wartości wyliczone automatycznie przez terminal MT4 na podstawie widocznego okna. Po zaznaczeniu opcji ‘Skala’ wartości te ograniczają oś Y (ceny) podczas przewijania wykresu np. strzałkami Lewo-Prawo, lub F12 - SHIFT+F12. Jeżeli przykładowo chcemy uzyskać skalę obejmującą większy przedział czasu, możemy przybliżyć lub oddalić wykres za pomocą klawiszy + i -, a następnie skorzystać z automatycznie wyliczonych wartości, lub wpisać ręcznie żądane minimum i maksimum. Przykład video poniżej.