Prognoza sprzedaży w Excelu z przedziałami ufności bez dodatków i VBA
Dowiedz się, jak zrobić prognozę sprzedaży w Excelu z przedziałami ufności bez VBA i dodatków. Artykuł pokazuje przygotowanie danych, użycie FORECAST.ETS, walidację oraz czytelne wykresy prognozy.
Jak przygotować dane sprzedażowe w Excelu, żeby prognoza nie była losowa?
Żeby prognoza w Excelu miała wartość analityczną, dane muszą tworzyć spójny szereg czasowy. W praktyce oznacza to jedną kolumnę z datą i jedną kolumnę z wartością sprzedaży, bez mieszania różnych częstotliwości. Jeśli prognozujesz miesięcznie, cały zestaw powinien być miesięczny; nie należy łączyć dni, tygodni i miesięcy w jednej serii. Daty muszą być prawdziwymi datami Excela, ułożonymi chronologicznie, a odstępy między nimi powinny być regularne.
Kluczowe jest też, aby dane były kompletne i porównywalne. Brakujące okresy trzeba uzupełnić jako istniejące punkty w czasie, a nie pomijać wiersze, bo dla modelu brak wiersza to nie to samo co sprzedaż równa zero. Zanim uruchomisz prognozę, trzeba też zdecydować, co dokładnie oznacza wartość sprzedaży: przychód netto, liczba sztuk, liczba zamówień albo marża. Nie wolno mieszać tych definicji w jednym szeregu ani zmieniać sposobu liczenia w połowie historii danych.
Duży wpływ na jakość prognozy ma oczyszczenie danych z zakłóceń, które nie opisują normalnego popytu. Jeśli w historii są jednorazowe zdarzenia, takie jak wyjątkowa promocja, brak towaru, zmiana cennika, awaria kanału sprzedaży czy ręczne korekty księgowe, to taki punkt może silnie zniekształcić wynik. Nie zawsze trzeba go usuwać, ale trzeba świadomie ocenić, czy reprezentuje typowe zachowanie sprzedaży. Prognoza oparta na danych pełnych anomalii będzie matematycznie poprawna, ale biznesowo przypadkowa.
Istotna jest również długość historii. Prognoza oparta na kilku punktach danych zwykle jest niestabilna. Jeśli sprzedaż ma sezonowość, seria powinna obejmować co najmniej pełne cykle sezonowe, na przykład kilkanaście miesięcy przy danych miesięcznych. Im krótsza i bardziej poszarpana historia, tym większe ryzyko, że Excel dopasuje trend do szumu zamiast do rzeczywistego wzorca.
Na poziomie arkusza najlepiej przygotować prostą, „płaską” tabelę bez scalonych komórek, ręcznie wpisanych sum pośrednich, pustych wierszy i ukrytych wartości tekstowych w kolumnie liczbowej. Liczby sprzedaży powinny być zapisane jako liczby, nie jako tekst, a jedna obserwacja powinna odpowiadać jednemu okresowi. Taki układ pozwala Excelowi poprawnie rozpoznać serię i ogranicza ryzyko, że wynik prognozy będzie pozornie precyzyjny, ale oparty na błędnie przygotowanych danych.
Kiedy użyć FORECAST.ETS i co oznacza „sezonowość” w praktyce?
FORECAST.ETS warto użyć wtedy, gdy prognozujesz dane z szeregu czasowego, w których poza ogólnym trendem pojawia się powtarzalny wzorzec w czasie. Typowy przykład to sprzedaż, która regularnie rośnie w te same miesiące, spada w weekendy albo ma cykliczne piki pod koniec kwartału. Funkcja jest przeznaczona właśnie do takich danych: uwzględnia poziom, trend i sezonowość.
W praktyce sezonowość nie musi oznaczać tylko pór roku. To każdy powtarzalny cykl obserwowany w stałych odstępach czasu. Dla danych miesięcznych sezonowością może być cykl 12-miesięczny, dla danych tygodniowych 52-tygodniowy, a dla danych dziennych np. 7-dniowy. Jeśli taki wzorzec rzeczywiście występuje, FORECAST.ETS zwykle daje trafniejsze wyniki niż prosta ekstrapolacja liniowa.
Najważniejsze jest to, że sezonowość musi być regularna i powtarzalna, a nie jednorazowa. Jednorazowy skok sprzedaży z powodu promocji, awarii dostaw albo świątecznego wyjątku nie jest sezonowością. To zdarzenie niestandardowe, które może wręcz pogorszyć prognozę, jeśli potraktujesz je jak stały wzorzec.
- Użyj
FORECAST.ETS, gdy dane mają stałą częstotliwość i widać cykliczne powtórzenia. - Nie używaj go jako pierwszego wyboru, jeśli seria jest krótka, bardzo nieregularna albo nie ma wyraźnego wzorca sezonowego.
- Jeśli dane są głównie rosnące lub malejące, ale bez powtarzalnych cykli, lepsze może być podejście trendowe zamiast modelu ETS.
W Excelu sezonowość można podać ręcznie jako długość cyklu albo pozwolić programowi wykryć ją automatycznie. W praktyce ręczne ustawienie ma sens wtedy, gdy znasz logikę danych, np. 12 dla miesięcy w roku. Automatyczne wykrywanie jest wygodne, ale działa najlepiej wtedy, gdy historia danych jest wystarczająco długa i wzorzec rzeczywiście się powtarza.
Krótko: FORECAST.ETS jest właściwym wyborem dla sprzedaży z cyklicznością, a „sezonowość” to po prostu regularny, powtarzalny rytm danych w czasie, niekoniecznie związany z pogodą czy kalendarzowymi porami roku.
Jak policzyć przedziały ufności w Excelu i co mówi FORECAST.ETS.CONFINT?
W Excelu przedział ufności dla prognozy z modelu ETS wyznacza funkcja FORECAST.ETS.CONFINT. Zwraca ona margines błędu dla prognozowanej wartości, a nie od razu dolną i górną granicę. Oznacza to, że jeśli prognoza z FORECAST.ETS wynosi 1000, a FORECAST.ETS.CONFINT zwraca 120, to przedział wynosi od 880 do 1120.
W praktyce liczy się to tak: najpierw wyznaczasz prognozę funkcją FORECAST.ETS, a potem dla tego samego punktu czasu liczysz margines funkcją FORECAST.ETS.CONFINT. Następnie:
- dolna granica = prognoza - margines
- górna granica = prognoza + margines
Typowa składnia wygląda tak: FORECAST.ETS.CONFINT(data_docelowa; wartości; oś_czasu; [poziom_ufności]; [sezonowość]; [uzupełnianie_danych]; [agregacja]). Kluczowy parametr to poziom_ufności. Jeśli wpiszesz 0,95, otrzymasz margines dla 95% przedziału ufności. Im wyższy poziom ufności, tym szerszy przedział; im niższy, tym węższy.
Ta funkcja mówi więc, jak duża jest niepewność prognozy wokół punktowej wartości zwróconej przez FORECAST.ETS. Nie oznacza to, że wynik na pewno znajdzie się w tym zakresie, tylko że model wyznacza taki przedział przy zadanym poziomie ufności na podstawie wzorca danych historycznych.
Żeby wynik był spójny, FORECAST.ETS i FORECAST.ETS.CONFINT powinny używać tych samych danych wejściowych i tych samych ustawień parametrów, zwłaszcza sezonowości, sposobu uzupełniania braków i agregacji. W przeciwnym razie granice przedziału mogą nie odpowiadać samej prognozie.
Najważniejsze interpretacyjnie jest to, że FORECAST.ETS.CONFINT nie ocenia „trafności” modelu w sensie biznesowym, tylko podaje statystyczny zakres niepewności dla konkretnego punktu prognozy. Wąski przedział sugeruje większą stabilność wzorca w danych, a szeroki — większą zmienność lub mniejszą przewidywalność szeregu czasowego.
Jak radzić sobie z brakami danych i wartościami odstającymi przed prognozą?
Przed prognozą w Excelu trzeba najpierw odróżnić braki danych od rzeczywistych zer oraz ustalić, czy wartości odstające są błędem, czy prawdziwym zdarzeniem biznesowym. Pusta komórka, brak raportu albo niekompletny import to nie to samo co sprzedaż równa 0. Jeśli te przypadki zostaną wymieszane, model może zaniżać lub zawyżać trend oraz zniekształcać przedziały ufności.
Braki danych należy uzupełniać w sposób możliwie neutralny. W szeregu czasowym najbezpieczniejsze jest zachowanie regularnych odstępów czasu i uzupełnienie luk metodą prostą i spójną z charakterem danych, na przykład przez interpolację między sąsiednimi okresami albo przez użycie średniej z porównywalnych okresów, jeśli występuje sezonowość. Nie należy automatycznie wpisywać zera, chyba że wiadomo, że w danym okresie sprzedaż faktycznie wyniosła zero. W Excelu warto też upewnić się, że daty są ciągłe i nie ma brakujących miesięcy lub tygodni, bo sama luka w osi czasu może zaburzyć obliczenia.
Wartości odstające trzeba oceniać przyczynowo. Jeśli skok sprzedaży wynikał z jednorazowej promocji, awarii systemu, błędu księgowania albo nietypowego zamówienia, taki punkt nie powinien bezrefleksyjnie wpływać na prognozę bazową. Jeśli jednak odchylenie od normy odzwierciedla realną zmianę popytu, usuwanie go byłoby błędem. Najpierw więc należy sprawdzić źródło odchylenia, a dopiero potem zdecydować, czy punkt zostawić, skorygować czy wyłączyć z modelu.
W praktyce w Excelu najczęściej stosuje się trzy bezpieczne podejścia: korektę ewidentnego błędu do wartości uzasadnionej danymi sąsiednimi, zastąpienie punktu wartością wygładzoną, albo pozostawienie go w danych, ale z wyraźnym oznaczeniem, że interpretacja prognozy musi uwzględniać zdarzenie jednorazowe. Dobrą kontrolą jest porównanie prognozy przed i po korekcie. Jeżeli pojedyncza obserwacja radykalnie zmienia wynik lub szerokość przedziału ufności, to sygnał, że wymaga świadomej decyzji, a nie automatycznego pozostawienia.
Najważniejsza zasada jest prosta: przed prognozą dane powinny być kompletne, spójne czasowo i oczyszczone tylko tam, gdzie masz uzasadnienie merytoryczne. Nie chodzi o „upiększanie” historii sprzedaży, lecz o usunięcie z modelu tego, co nie opisuje normalnego mechanizmu sprzedaży.
Jak dobrać horyzont prognozy, żeby nie obiecywać nierealnych wyników?
Horyzont prognozy należy dobrać do długości i jakości danych historycznych oraz do stabilności zjawiska. Im dalej wybiegasz w przyszłość, tym szybciej rośnie niepewność, więc nawet poprawnie policzona prognoza może przestać być wiarygodna operacyjnie. W praktyce bezpieczna zasada jest prosta: prognozuj tylko na tyle okresów, na ile historia rzeczywiście pokazuje powtarzalny wzorzec trendu i sezonowości. Jeśli masz krótki lub niestabilny szereg, horyzont powinien być odpowiednio krótszy.
Żeby nie obiecywać zbyt dużo, warto ocenić, czy w danych nie było zmian strukturalnych, takich jak zmiana cen, kanału sprzedaży, oferty, sposobu raportowania albo jednorazowych zdarzeń. Model oparty na przeszłości zakłada, że mechanizm będzie działał podobnie w przyszłości. Jeżeli ten warunek nie jest spełniony, długi horyzont daje pozorną precyzję, ale słabą użyteczność. W takim przypadku lepiej ograniczyć prognozę do najbliższych okresów, które można uzasadnić aktualnymi warunkami biznesowymi.
Dobrym testem jest szerokość przedziałów ufności. Jeśli przy dalszych okresach przedziały szybko się rozszerzają, to znak, że model traci zdolność do precyzyjnego przewidywania i nie należy traktować odległych wartości jako obietnicy wyniku. W Excelu sama prognoza punktowa może wyglądać przekonująco, ale to właśnie przedział pokazuje, jak daleko można sięgać bez nadmiernej pewności.
Rozsądne podejście polega na dopasowaniu horyzontu do rytmu decyzji. Jeżeli prognoza ma wspierać zamówienia, plan produkcji lub budżet krótkoterminowy, lepiej użyć krótszego, bardziej kontrolowalnego okresu i regularnie ją aktualizować, niż publikować długą prognozę o niskiej wiarygodności. Innymi słowy: wybieraj najdłuższy horyzont, dla którego model nadal zachowuje sens biznesowy, a nie najdłuższy, jaki technicznie da się policzyć.
Jak zwizualizować prognozę i przedziały ufności na jednym wykresie?
Najczytelniej zrobić to na wykresie liniowym z trzema seriami: wartością prognozy, dolną granicą przedziału ufności i górną granicą przedziału ufności. W praktyce w tabeli powinny znaleźć się co najmniej cztery kolumny: okres, prognoza, dolna granica i górna granica. Następnie zaznaczasz cały zakres danych i wstawiasz wykres liniowy. Excel narysuje trzy linie na jednej osi czasu, dzięki czemu od razu widać zarówno przebieg prognozy, jak i szerokość niepewności.
Jeżeli zależy Ci na bardziej czytelnej prezentacji, linię prognozy ustaw jako wyraźną, a linie graniczne jako cieńsze i jaśniejsze. Dzięki temu odbiorca widzi centralny scenariusz oraz zakres, w którym z określonym poziomem ufności mogą mieścić się przyszłe wartości. W prostym wariancie to w zupełności wystarcza i nie wymaga dodatków ani VBA.
Możesz też uzyskać efekt „pasma” ufności. W tym celu zamiast pokazywać dwie granice jako osobne, wyraziste linie, pozostawiasz linię prognozy, a przedział przedstawiasz jako obszar między dolną i górną granicą. W samym Excelu najłatwiej osiągnąć to przez wykres kombinowany lub odpowiednie przygotowanie serii pomocniczych, ale do FAQ najważniejsze jest to, że pasmo ufności zawsze opiera się na dwóch wartościach: dolnej i górnej granicy dla każdego okresu. Bez tych dwóch serii nie da się poprawnie pokazać zakresu niepewności.
Trzeba też pilnować zgodności osi i jednostek. Wszystkie serie muszą być liczone dla tych samych dat lub okresów i wyświetlane na tej samej skali pionowej. Jeśli jedna seria ma przesunięte daty albo inną częstotliwość, wykres będzie mylący. Dobrą praktyką jest także wyraźne podpisanie legendy, tak aby odbiorca odróżniał prognozę od granic przedziału ufności.
Jeżeli chcesz pokazać obok siebie dane historyczne i przyszłe, dodaj historyczną sprzedaż jako osobną serię, a prognozę oraz jej granice rozpocznij od pierwszego okresu prognozowanego. Wtedy na jednym wykresie widać przejście od danych rzeczywistych do przewidywanych oraz to, jak rozszerza się przedział ufności w przyszłości.
Jak szybko sprawdzić jakość prognozy na danych historycznych (walidacja)?
Najszybsza i najbardziej użyteczna walidacja w Excelu polega na prostym teście holdout: dzielisz dane historyczne na dwie części, z których pierwsza służy do zbudowania prognozy, a druga do sprawdzenia, jak dobrze model przewiduje wartości już znane. W praktyce odcinasz końcowy fragment szeregu, na przykład ostatnie 6 lub 12 okresów, liczysz prognozę tylko na podstawie wcześniejszych danych, a następnie porównujesz prognozowane wartości z rzeczywistą sprzedażą z odłożonego fragmentu.
W Excelu wystarczy więc przygotować trzy kolumny: wartość rzeczywistą, wartość prognozowaną oraz błąd. Błąd najczęściej liczysz jako różnicę =Rzeczywista-Prognoza, a dla oceny jakości wygodnie dodać błąd bezwzględny =ABS(Rzeczywista-Prognoza) i błąd procentowy =ABS((Rzeczywista-Prognoza)/Rzeczywista), o ile wartości rzeczywiste nie są równe zero. Następnie liczysz średnią z tych błędów dla całego okresu testowego.
Do szybkiej oceny najlepiej użyć miar, które łatwo zinterpretować. MAE pokazuje przeciętny błąd w jednostkach sprzedaży, więc od razu widać, o ile sztuk, złotych lub zamówień model zwykle się myli. MAPE pokazuje przeciętny błąd procentowy, dzięki czemu łatwiej porównać jakość między seriami o różnej skali. Jeśli MAPE wynosi 8%, oznacza to, że prognoza myli się średnio o około 8% względem wartości rzeczywistych. Trzeba tylko uważać, gdy w danych występują zera lub wartości bardzo małe, bo wtedy MAPE może zniekształcać ocenę.
Poza samą średnią błędów warto spojrzeć, czy model nie ma systematycznego odchylenia. Jeżeli większość błędów ma ten sam znak, na przykład prognoza niemal stale zaniża sprzedaż, to model jest obciążony, nawet jeśli średni błąd bezwzględny wygląda akceptowalnie. Dobra szybka walidacja to więc nie tylko jedna liczba, ale też krótki przegląd, czy błędy są umiarkowane i czy nie układają się jednostronnie.
Jeżeli chcesz ocenić prognozę rzetelniej, powtórz ten sam test dla kilku różnych końcowych okien danych, ale przy szybkiej kontroli w FAQ zwykle wystarcza jedno odcięcie końcówki szeregu. Najważniejsze jest to, aby nie sprawdzać modelu na tych samych danych, na których został dopasowany, bo wtedy wynik będzie pozornie lepszy niż w rzeczywistym użyciu.
Majczęściej zadawane pytania i odpowiedzi odnośnie Prognoza sprzedaży w Excelu z przedziałami ufności bez dodatków i VBA
Tak, da się to zrobić wyłącznie wbudowanymi funkcjami Excela. Do prognozy punktowej służy FORECAST.ETS, a do wyznaczenia marginesu błędu FORECAST.ETS.CONFINT. Następnie dolną i górną granicę liczysz jako prognoza minus oraz plus margines. Takie podejście działa bez makr, dodatków i zewnętrznych narzędzi.
Potrzebny jest spójny i regularny szereg czasowy. Najlepiej przygotować jedną kolumnę z prawdziwymi datami Excela i jedną kolumnę z wartościami sprzedaży zapisanymi jako liczby. Dane powinny być kompletne, chronologiczne i porównywalne, bez mieszania różnych częstotliwości oraz bez zmiany definicji sprzedaży w połowie serii.
FORECAST.ETS jest lepszy wtedy, gdy sprzedaż ma powtarzalny wzorzec w czasie. Sprawdza się przy danych z sezonowością, czyli cyklem regularnie wracającym w stałych odstępach. W praktyce warto go wybrać, gdy w historii widać:
- trend i cykliczne powtórzenia,
- stałą częstotliwość danych,
- wystarczająco długą serię do rozpoznania wzorca.
Przedział ufności pokazuje zakres niepewności wokół prognozy punktowej. Nie oznacza gwarancji, że przyszła sprzedaż na pewno zmieści się między dolną i górną granicą. Oznacza raczej, że model wyznacza taki statystyczny zakres dla wskazanego poziomu ufności na podstawie zachowania danych historycznych.
Najczęstsze błędy wynikają z błędnie przygotowanych danych i niespójnych ustawień modelu. W praktyce najczęściej problemem są:
- brakujące okresy w osi czasu,
- liczby zapisane jako tekst,
- mieszanie zer z brakami danych,
- traktowanie jednorazowych skoków jak sezonowości,
- inne parametry w FORECAST.ETS i FORECAST.ETS.CONFINT.
Tak, brakujące okresy trzeba uzupełnić, żeby zachować regularność szeregu czasowego. Pominięcie wiersza nie oznacza dla modelu tego samego co sprzedaż równa zero. Dlatego należy odtworzyć pełną oś czasu i dopiero potem zdecydować, jak potraktować lukę: jako brak danych, wartość interpolowaną albo rzeczywiste zero, jeśli było faktyczne.
Najlepiej prognozować tylko na tyle okresów, na ile dane historyczne pokazują stabilny wzorzec. Im dalszy horyzont, tym większa niepewność i szersze przedziały ufności. W praktyce lepiej wybrać krótszy zakres, regularnie go aktualizować i dopasować do rytmu decyzji niż budować długą prognozę o słabej użyteczności operacyjnej.
Najszybciej zrobisz to przez prostą walidację na danych historycznych. Odetnij końcową część szeregu, zbuduj prognozę na wcześniejszych danych i porównaj wynik z rzeczywistymi wartościami z odłożonego okresu. Dobrze sprawdzić nie tylko średni błąd, ale też to, czy model nie zaniża albo nie zawyża sprzedaży w sposób systematyczny.